Windows 批处理中 IF 语句中变量前的斜杠会导致什么结果?

Windows 批处理中 IF 语句中变量前的斜杠会导致什么结果?

我必须调整一个旧的批处理脚本,并且/许多命令中的变量名前面都有一个if

if /%error_found% == /0 (
  ...
)

使用斜线与不使用斜线有什么区别?即使没有斜线,该语句对我来说也可以工作。

if %error_found% == 0 (
  ...
)

斜线是否会造成影响?

答案1

在我看来,字符串比较中存在语法错误,应该是:
/%error_found%/ == /0/

更好的语法是使用引号:
"%error_found%" == "0"
或者括号:
(%error_found%) GEQ (0)

仅当不包含空白且不为空时,您的语法%error_found% == 0才会起作用。%error_found%

更多信息请参阅 IF 命令

相关内容