Local Scheduler-Zeichensatzanalyse und die Befehlszeile
Der Local Scheduler verwendet standardmäßig durch Leerstellen begrenzte Zeichensatzanalyse für die Befehlszeile. D.h. wenn einer der Parameter eine Leerstelle enthält, muss er durch Anführungszeichen eingeschlossen werden. Gewisse Parameter, wie z. B. /start, enthalten immer Leerstellen und müssen daher immer in Anführungszeichen stehen. Andere Parameter, z. B. /exe und /cmd, können Leerstellen enthalten oder auch nicht, und müssen daher nicht unbedingt in Anführungszeichen stehen.
Das folgende Beispiel zeigt eine Befehlszeile, die keine Anführungszeichen benötigt.
LocalSch.exe /exe=c:\windows\system32\cmd.exe
Das folgende Beispiel zeigt eine Befehlszeile, die Anführungszeichen benötigt.
LocalSch.exe /exe="%ProgramFiles%\MyProgram\myprog.exe" /cmd="/apm /s /ro"
Anführungszeichen um Parameter, die bereits in Anführungszeichen stehen
Wenn die an /cmd zu übergebenen Parameter bereits in Anführungszeichen stehen, dann sind drei Anführungszeichen nötig: Ein Satz für die gesamte Zeichenfolge. Ein weiterer, um die Werte in Anführungszeichen in Anführungszeichen zu setzen und die der Werte in Anführungszeichen.
Die folgende Befehlszeile zeigt ein Beispiel für Parameter, die von drei Anführungszeichen umgeben sein müssen.
LocalSch.exe /exe="%ProgramFiles%\LANDesk\File Replicator\LANDeskFileReplicatorNoUI.exe" /cmd="""%ProgramFiles%\LANDesk\File Replicator\LDHTTPCopyTaskConfig.xml"" ""%ProgramFiles%\LANDesk\File Replicator\replicator.log"""
Im o.g. Befehl stellen die beiden Parameter Dateipfade dar. Weil sich beide Pfade im Verzeichnis "Programme" befinden, haben ihre Pfade Leerstellen und müssen in Anführungszeichen gesetzt werden, um korrekte Parameter für LANDeskFileReplicatorNoUI.exe darzustellen. Daher ist jeder Parameter in Anführungszeichen von einem zweiten Satz Anführungszeichen und die gesamte Zeichenfolge von weiteren Anführungszeichen umschlossen.
Redirection-Operator in Anführungszeichen setzen
Auch Switches, die einen Redirection-Operator enthalten, müssen in Anführungszeichen gesetzt werden. Redirection-Operator haben folgende Symbole: <, >, |. Der /bw-Switch verwendet ein |-Zeichen, das wir Strich oder Balken nennen. Es ist wichtig, daran zu denken, dass das |-Zeichen in der Befehlsaufforderung die Ausgabe an eine andere Anwendung trennt. Um zu vermeiden, dass dieses Zeichen von der Befehlszeile analysiert wird, muss es in Anführungszeichen gesetzt werden.
Der folgende Befehl verwendet beispielsweise einen /bw-Parameter mit einem |-Zeichen und muss in Anführungszeichen stehen.
LocalSch.exe /exe=C:\ldclient\myprogram.exe /cmd="/apm /s /ro" /bw="LAN|server"