web-dev-qa-db-ja.com

CMDでプロセスが完了するのを待ちます

別のバッチファイルを実行するバッチファイルを作成し、そのプロセスが完了するのを待って(つまり、CMDウィンドウが閉じるまで待って)、別のアプリケーション(.exe)を起動します。どうやってやるの?私はこれを試しましたが、両方のプロセスを同時に実行します:

start "" "C:\Program Files\batch1.bat" /w
start "" "C:\Program Files\process1.exe"

PS:それが重要かどうかはわかりませんが、先ほど触れたbatch1.batファイルは、完了するまでに数秒かかるプログラムのグループを実行します。

4
user660611

基本的なエラーは、開始コマンドでの/wの配置です。コマンドでは、startではなくbatch1へのパラメーターです。あなたは使うべきです:

start /w "" "C:\Program Files\batch1.bat"

ただし、新しいcmdプロセスを開始せず、代わりに次を使用する方が効率的です。

call "C:\Program Files\batch1.bat"
7
AFH