)目前是意外情况。批次错误

时间:2019-06-18 19:04:05

标签: batch-file cmd

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 个答案:

答案 0 :(得分:2)

::替换为rem。实际上,代码块中似乎有一个标签,通常是不允许的。

答案 1 :(得分:2)

Magoo为您提供了传统的答案-在括号中使用column_3代替REM

但是还有另一种选择。您可以在代码中的任何位置(甚至在一行的中间)使用未定义的变量“扩展”。 “注释”只是扩展为空字符串。

::

set training_folder="%~1" %= business rules file is assumed to be in here =% 不能出现在变量名中,除了=%=ExitCode%之类的未记录的动态伪变量外。 %=ExitCodeAscii%只能出现在名称中的第一个字符以外的任何位置。为了令人愉悦的视觉对称性,我在开头和结尾使用了一对,并且无论内容如何,​​它都保证永远不会匹配变量的名称。

唯一的限制是您的“评论”不能包含=: