Wenn Sie einen regulären Batch verwenden und weder START noch ähnliches implementieren, um neue Prozesse zu erzeugen, warten Sie, bis der vorherige Befehl beendet ist, bevor Sie fortfahren.
Der Stapel geht nicht weiter zum nächsten Befehl, bis er vom vorherigen Befehl einen Beendigungscode erhält. Im Kontext einer einfachen Dateikopie wartet sie also, bis der Kopierbefehl abgeschlossen ist. Sie können dies bezeugen, indem Sie einfach den Befehl Kopieren an der Eingabeaufforderung ausführen. Sie erhalten nicht die Aufforderung, bis das Kopieren abgeschlossen ist.
Nun können Sie Probleme bekommen, wenn Sie ein Programm starten, das neue Prozesse hervorbringt, die funktionieren und auf die Sie warten müssen.
Beispielsweise kann das Startprogramm beendet werden (ein Exit-Code wird in die Batchdatei zurückgegeben, wodurch es fortgesetzt wird), bevor der neu gestartete Prozess die erforderlichen Schritte ausführt, bevor Sie mit dem Batch fortfahren.
In diesen Fällen müssen Sie entweder die Batchdatei für eine gewisse Zeit tasklist
anhalten (und hoffen, dass sie innerhalb dieser Zeit abgeschlossen wird) oder eine Schleife im Batch verwenden, um zu überwachen, ob der Prozess abgeschlossen ist (dh: with ), bevor Sie fortfahren .