0

変数に応じてループ内で他のバッチ ファイルを実行するバッチ ファイルを作成しようとしていますが、最初のバッチ ファイルの実行後、「マスター」バッチ ファイルも終了します。私は何が欠けていますか?

:loop
if %variable% == 5 (bat1.bat) else (bat2.bat) 
goto loop
4

1 に答える 1

1

これは、制御を他のバッチファイルに転送しているためです。つまり、「マスター」ファイルに戻ることはありません。

callあなたはこのように使う必要があります

:loop
if %variable% == 5 (call bat1.bat) else (call bat2.bat) 
goto loop

これにより、呼び出したバッチファイルが終了した後、制御がマスターバッチファイルに戻り、ループを続行できるようになります。

お役に立てれば

于 2012-07-05T15:33:50.527 に答える