Análise de caractere do agendador local e a linha de comando

O agendador local usa a análise delimitada por espaço em branco padrão para a linha de comando. Isto significa que se qualquer dos parâmetros contém espaço em branco ele precisa estar encerrado entre aspas. Alguns parâmetros, como /start, sempre contêm espaço em branco e então sempre precisam estar entre aspas. Outros parâmetros, como /exe e /cmd, podem ou não conter espaço em branco e podem ou não precisar estar entre aspas.

O seguinte exemplo mostra uma linha de comando que não precisa estar entre aspas.

LocalSch.exe /exe=c:\windows\system32\cmd.exe

O seguinte exemplo mostra uma linha de comando que precisa estar entre aspas.

LocalSch.exe /exe="%ProgramFiles%\MyProgram\myprog.exe" /cmd="/apm /s /ro"

Colocando entre aspas parâmetros que já estão entre aspas

Se os parâmetros que serão passados a /cmd= já estão entre aspas, então três aspas serão necessárias: Um par para colocar a string inteira entre aspas, outro para colocar entre aspas os valores com aspas, e os valores com aspas.

Por exemplo, a seguinte linha de comando mostra um exemplo de parâmetros que precisam ser colocados entre três aspas.

LocalSch.exe /exe="%ProgramFiles%\LANDesk\File Replicator\LANDeskFileReplicatorNoUI.exe" /cmd="""%ProgramFiles%\LANDesk\File Replicator\LDHTTPCopyTaskConfig.xml"" ""%ProgramFiles%\LANDesk\File Replicator\replicator.log"""

No comando acima, os dois parâmetros são caminhos a arquivos. Porque os dois caminhos estão no diretório “Arquivos de Programas”, eles contêm espaços e deve estar entre aspas para serem parâmetros corretos do LANDeskFileReplicatorNoUI.exe. Então, cada parâmetro entre aspas estará rodeado por um segundo par de aspas, e a string inteira estará rodeada por aspas.

Colocando entre aspas operadores de redirecionamento

As aspas devem também rodear qualquer switch que contém um operador de redirecionamento. Os operadores de redirecionamento incluem os seguintes símbolos: <, >, |. O switch /bw usa o caractere | chamado barra. É importante lembrar que o caractere | é usado na linha de comando para direcionar a saída para outro aplicativo. Para impedir que este caractere seja analisado pela linha de comando, ele deve estar entre aspas.

Por exemplo, o seguinte comando usa um parâmetro /bw com um caractere | e precisa estar entre aspas.

LocalSch.exe /exe=C:\ldclient\myprogram.exe /cmd="/apm /s /ro" /bw="LAN|server"