1

在 cmd.exe 窗口中,当我运行python -c "exit(12)"然后运行echo %errorlevel%时,它会打印12. 之后,当我运行时python -c "exit(13)" & echo %errorlevel%,它会打印12.

为什么第二个命令无法打印正确的退出代码?

4

1 回答 1

3

运行命令时会发生 %errorlevel% 的替换。它反映了当您按下“输入”键时 %errorlevel% 的值。

例如,考虑:

> set foo=foo

> echo %foo%
foo

> set foo=bar & echo %foo%
foo

> echo %foo%
bar

但是,您可以像这样检查错误级别:

> python -c 'exit(13)' & if errorlevel 13 echo "its 13"
于 2014-07-13T10:23:05.657 回答