Windows のコマンド ラインからアプリケーションの終了コードを取得するにはどうすればよいですか? 質問する

Windows のコマンド ラインからアプリケーションの終了コードを取得するにはどうすればよいですか? 質問する

プログラムを実行しており、その戻りコードを確認したいと考えています (エラーに応じて異なるコードが返されるため)。

Bashでは次のように実行できます。

$をエコーし​​ますか?

Windows で cmd.exe を使用する場合はどうすればよいですか?

ベストアンサー1

「終了コード」は、 という名前のシェル変数に格納されますerrorlevel

errorlevelコンソールアプリケーションの最後に設定されます。Windowsアプリケーションの動作は少し異なります。@を参照してください。ゲイリー答え下に。

比較にはifコマンド キーワードを使用します。errorlevel

if errorlevel <n> (<statements>)

エラーレベルがn以上の場合にステートメントを実行します。詳細については実行してください。if /?

という名前のシェル変数にはerrorlevel文字列として値が含まれており、% で囲むことで逆参照できます。

スクリプトの例:

my_nifty_exe.exe

rem Give resolution instructions for known exit codes.
rem Ignore exit code 1.
rem Otherwise give a generic error message.

if %errorlevel%==7 (
   echo "Replace magnetic tape."
) else if %errorlevel%==3 (
   echo "Extinguish the printer."
) else if errorlevel 2 (
   echo Unknown Error: %errorlevel% refer to Run Book documentation.
) else (
   echo "Success!"
)

警告: errorlevel という名前の環境変数が存在する場合、errorlevel という名前のシェル変数が上書きされます。if errorlevelテストには影響しません。

おすすめ記事