1

cmd.exe ウィンドウで、実行python -c "exit(12)"してから実行するとecho %errorlevel%、 が出力され12ます。その後、 を実行するpython -c "exit(13)" & echo %errorlevel%と、 が出力され12ます。

2 番目のコマンドが正しい終了コードの出力に失敗するのはなぜですか?

4

1 に答える 1

3

コマンドを実行すると、%errorlevel% の置換が行われます。「Enter」キーを押したときの %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 に答える