【发布时间】:2016-12-12 20:22:59
【问题描述】:
我正在尝试检测变量是否设置为 true 或什至未设置,但是当发生这种情况且未设置时,批处理文件在执行时会导致系统崩溃。如何解决这个问题?
例如:
:Shell
if %SHELL%==true goto SkipShell
SETX SHELL TRUE
:SkipShell
【问题讨论】:
-
见
if /?特别是if defined。大多数人使用的一种技术是if "%SHELL%"=="true" goto SkipShell,因此==的两边总是会有引号。 -
使用
if "%SHELL%" == "" goto NotDefined(即使用引号)将检查SHELL是否已定义且不为空。您可以使用if not ...反转测试的意义。
标签: windows batch-file environment-variables