Пакетный файл по какой-то причине добавляет пробел между параметрами - PullRequest
2 голосов
/ 19 июня 2011

У меня странная ситуация, когда по какой-то причине инструкции в моем пакетном файле дают дополнительный пробел.

scan "%1" -d "db" --memory -r -i --max-filesize=100m > output.txt

При выполнении вместо выполнения:

scan "C:\" -d "db" --memory -r -i --max-filesize=100m

этовыполняет:

scan  "C:\" -d "db" --memory -r -i --max-filesize=100m

Как вы можете видеть, он добавляет пробел между "scan" и "C: \"

Может кто-нибудь объяснить, почему это происходит?

1 Ответ

3 голосов
/ 19 июня 2011

Проблема в том, что вы цитируете C:\.Ему не нужно заключать в кавычки (поскольку он не содержит пробелов), и похоже, что приложение интерпретирует результирующую \" как экранированную кавычку, что приводит к неопределенной строке в двойных кавычках.

Добро пожаловать врадость пакетного скриптинга.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...