这里输出重定向到空的变量是我的代码:的if/else在批处理文件
IF "%LOGFILE%" NEQ "" (
CALL :DO_SOMETHING 2>&1> %LOGFILE%
) ELSE (
CALL :DO_SOMETHING
)
我现在面临的问题是,if/else语句作为一个大的语句,该语句作为一个整体对待需要在语法上正确。所以如果“%LOGFILE%”确实等于“”,那么第一个CALL语句在语法上将不会是正确的(即使它在这种情况下永远不会被调用),从而使整个IF/ELSE语句在语法上不正确。
我该如何解决这个问题?
谢谢!我还没有尝试过,但看起来应该工作。只是想知道为什么我需要逃避'>'和'&'。 – user972276
如果你不逃避它们,它会将它们视为试图重定向“SET”命令的输出,并根据原始问题生成语法错误。 –