) было неожиданным в это время. Пакетная ошибка - PullRequest
0 голосов
/ 18 июня 2019
IF "~1" == "" (
    pause
    set /p training_folder="Enter training folder: "
) else (
    pause
    set training_folder="%~1" & ::business rules file is assumed to be in here
)
pause
) was unexpected at this time. Batch error

Ответы [ 2 ]

2 голосов
/ 18 июня 2019

Магу дал вам традиционный ответ - используйте REM вместо :: в скобках.

Но есть и другой вариант. Вы можете использовать неопределенную переменную «раскрытие» в любом месте вашего кода, даже в середине строки. «Комментарий» просто расширяется до пустой строки.

set training_folder="%~1" %= business rules file is assumed to be in here =%

= не может появляться в именах переменных, за исключением недокументированных динамических псевдопеременных, таких как %=ExitCode% и %=ExitCodeAscii%. = никогда не может появляться где-либо, кроме первого символа в имени. Я использую пару в начале и в конце для приятной визуальной симметрии, и она гарантированно никогда не совпадет с именем переменной, независимо от ее содержания.

Единственное ограничение - ваш комментарий не может содержать : или %.

2 голосов
/ 18 июня 2019

Заменить :: на rem.На самом деле в кодовом блоке, похоже, есть метка, что обычно не разрешается.

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