在 cmd.exe 窗口中,当我运行 python -c "exit(12)"
然后运行 echo %errorlevel%
时,它打印 12
。之后,当我运行 python -c "exit(13)"& echo %errorlevel%
时,它会打印 12
。
为什么第二个命令无法打印正确的退出代码?
最佳答案
%errorlevel% 的替换发生在您运行命令时。当您按下“输入”键时,它反射(reflect)了 %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"
关于python - 为什么此命令无法打印 Python 命令的正确退出代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24721470/