4

同時に実行する実行可能ファイルの束をそれぞれ開始するバッチファイルがたくさんあります。各バッチ ファイルは 30 個の実行可能ファイルを開始します。これらの 30 個が完了したら、実行可能ファイルの次のバッチを一度に 30 個ずつ実行したいと考えています。.exe は、バッチ ファイルで「開始」コマンドを使用して呼び出され、問題なく動作します。30 個の exe のグループごとに個別のバッチ ファイルを実行でき、必要に応じて同時に実行できます。

各サブバッチ ファイルを呼び出す「マスター」バッチ ファイルを作成しましたが、サブバッチ ファイルを順番に実行する方法がわかりません。

マスター バッチ ファイルが次のような場合:

Batch1.bat
Batch2.bat
Batch3.bat

最初のバッチ ファイルのみが呼び出され、他のバッチ ファイルは呼び出されません。

マスター バッチ ファイルが次のような場合:

call Batch1.bat
call Batch2.bat
call Batch3.bat

次に、すべてのサブバッチ ファイルが同時に実行を開始し、何百もの実行可能ファイルが同時に起動しようとします。

マスター バッチ ファイルで最初のバッチ ファイルを呼び出し、それが終了するのを待ってから次のバッチ ファイルを呼び出し、終了するのを待ってから次のバッチ ファイルを呼び出すようにするにはどうすればよいですか?

前もって感謝します、

rgames

4

6 に答える 6

2

いくつかのファイルに対してデータ エクスポート プログラムを実行する必要がありました。私の解決策:

MasterBatch.bat:

@echo off
start /w batch1.bat
start /w batch2.bat

Batch1.bat

@echo off
cmd /c "c: & cd Program Files (x86)/PATH & targetProgram.exe -parametersToExportVideo1"
EXIT

Batch2.bat

@echo off
cmd /c "c: & cd Program Files (x86)/PATH & targetProgram.exe -parametersToExportVideo2"
EXIT

プログラムの他の問題を実行するように適合される場合があります。

于 2014-04-24T08:41:57.257 に答える
2

別のバッチ CALL を開始すると、同じウィンドウで開始され、呼び出されたバッチは同じ変数コンテキストにアクセスできます。したがって、呼び出し元に影響を与える変数を変更することもできます。

バッチファイルでwaitを使用して実行可能ファイルを呼び出すと、それらが終了するまで待機します。

START /WAIT  batch1.bat
START /WAIT batch2.bat

お役に立てれば

于 2013-07-27T23:58:45.780 に答える
2

すみません。ここに誤解があると思います。マスター バッチ ファイルが次の場合:

call Batch1.bat
call Batch2.bat
call Batch3.bat

次に、Batch1.bat が終了した後に Batch2.bat が呼び出されます。これを確認するために簡単なテストを行うことができます。一方、各 BatchN.bat プログラムが同じ変数を使用する可能性はありますか? その場合、Batch1.bat から残された最後の値が Batch2.bat に干渉する可能性があります。この場合、Setlocal各バッチ ファイルの先頭にコマンドを追加する必要があります。

于 2013-07-28T03:53:30.810 に答える