У меня есть пакетный скрипт, который в конечном итоге запускает другой пакетный файл и ожидает его завершения. Вот синтаксис, который у меня изначально был:
for %%i in ("*.xml") do start /separate /wait "%PROGRAM_PATH%" "%LOCAL_OUTGOING_PATH%\%%i"
Что произошло, так это то, что вместо открытия программы, на которую указывает% PROGRAM_PATH%, он запустил Internet Explorer и показал файл XML, заданный %% i. Это выглядело так, как будто он игнорировал часть% PROGRAM_PATH% команды запуска. Я пытался использовать% PROGRAM_NAME% без кавычек, которые тоже не работали. % PROGRAM_PATH%, кстати, указывает на
"C: \ DOS \ copy.bat". Так что мне пришлось жестко запрограммировать путь там следующим образом:
for %%i in ("*.xml") do start /separate /wait C:\DOS\copy.bat "%LOCAL_OUTGOING_PATH%\%%i"
Это заставило его наконец-то работать так, как я хотел. Но я хочу иметь возможность использовать переменную. Почему это не работает?