私は2つのbatファイルを持っています。callexcode.cmd は excode.cmd を呼び出し、存在しないファイル 'saurabh' を呼び出すだけです。呼び出し元にエラー コードを出力したい場合 (この場合は callexcode.cmd で、成功したことを示す 0 を取得します。しかし、「saurabh」というファイルがないため、エラー コードは 1 です。終了を出力しています)両方のバットファイルのコード. callie は終了コードを 1 と表示しますが、caller は終了コードを 0 と表示します. 誰でも見て、どこが間違っているのか教えてください. むしろ、終了コードがめちゃめちゃ。
callExcode.cmd
IF "%1"=="abc" (
SET good=%2
)
IF /I "%good%" == "pqr" (
CALL exCode
echo ' in file callexcode, error level ret = %ERRORLEVEL%'
@EXIT /B %ERRORLEVEL%
)
excode.cmd
CALL saurabh
echo 'in file excode'
echo 'exit code %ERRORLEVEL%'
@EXIT /B %ERRORLEVEL%
出力 C:\docs>callExcode.cmd abc pqr
C:\docs>IF "abc" == "abc" (SET good=pqr )
C:\docs>IF /I "pqr" == "pqr" ( CALL exCode echo ' ファイル callexcode 内、エラー レベル ret = 0'
)
C:\docs>CALL saurabh 'saurabh' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されません。
C:\docs>echo 'in file excode' 'in file excode'
C:\docs>echo 'exit code 1' 'exit code 1' ' ファイル callexcode 内、エラー レベル ret = 0'
前もって感謝します!
サウラブ