28

次のようなWindowsバッチファイルがあります。

C:\DoStuff.cmd
move output.bak C:\newfolder\output.bak

私が抱えている問題は、DoStuff.cmdがJavaプログラムを実行し、完了するとバッチを終了してコマンドプロンプトに戻ることです。2行目はヒットしません。

代わりに、新しいウィンドウでコマンドを実行するために次のことを試みました。

start "My program" /WAIT C:\DoStuff.cmd
move output.bak C:\newfolder\output.bak

上記で何が起こるかというと、新しいコマンドウィンドウがcmdファイルの実行を生成し、待機中のコマンドプロンプトに戻り、ウィンドウが閉じることはなく、最初のコマンドウィンドウは待機状態になり、2番目のコマンドウィンドウはステップ1の終了後に何もしなくなります。

どういうわけかバッチ実行の制御なしで最初のコマンドを実行するにはどうすればよいですか?

よろしくお願いします

4

1 に答える 1

42

DOS呼び出しコマンドを使用できます:

@echo off
call C:\DoStuff.cmd
echo Exit Code = %ERRORLEVEL%

エラーコードを取得した後、たとえば次の手順に進むことができます。

if "%ERRORLEVEL%" == "1" exit /B 1
于 2011-12-13T09:38:32.597 に答える