Warten, bis ein durch den Aufruf einer Batch-Datei erstellter Prozess abgeschlossen ist

8

MyFile1.bat ruft MyFile2.bat zweimal auf:

%Vor%

Wie kann ich an dieser Stelle warten, bis beide Prozesse, die durch die Aufrufe von MyFile2.bat ausgelöst wurden, abgeschlossen sind?

    
barak manos 02.12.2013, 15:41
quelle

4 Antworten

7

Verwenden Sie einfach den Parameter Start / WAIT.

%Vor%     
Knuckle-Dragger 13.12.2013, 22:55
quelle
3
%Vor%

Laut meinen Tests sollte dies funktionieren, vorausgesetzt, dass die MyFile2.bat .Ebensichtlich die vollständigen Pfade zu den bat-Dateien verwendet werden sollten.

    
npocmaka 02.12.2013 16:43
quelle
3

Sie können "Status-Dateien" verwenden, um das zu wissen; In MyFile1.bat beispielsweise machen Sie Folgendes:

%Vor%

Und fügen Sie diese Zeile am Ende von MyFile2.bat ein:

%Vor%

Sie können auch eine ping Verzögerung in den Wartezyklus einfügen, um weniger CPU in dieser Schleife zu verschwenden.

    
Aacini 02.12.2013 17:26
quelle
2

Du kannst es so machen:

%Vor%

Wenn der zweite start2.bat fertig ist, wird eine Datei "End.val" erstellt, Sie müssen nur testen, ob diese Datei existiert, dann wissen Sie, dass Ihr Prozess abgeschlossen ist.

Wenn das erste myfile2 mehr Zeit für die Ausführung benötigt, dann können Sie dasselbe (mit einem anderen Dateinamen) mit dem ersten start myfile2.bat machen und einen Test mehr in :testend

machen %Vor%     
SachaDee 04.12.2013 00:33
quelle