Zweck: | Führen Sie eine Batchdatei aus einer anderen aus. |
Format: | Anrufen Datei | :Etikette [p1 [p2 ...]] |
Datei | Die auszuführende Batchdatei. |
: Etikette | Eine Bezeichnung in der aktuellen Batchdatei. |
p1, p2,... | Parameter für die Batchdatei oder Unterroutine |
Siehe auch: ABBRECHEN und deine QUIT.
Verwendung:
CALL ermöglicht es Batch-Dateien, andere Batch-Dateien aufzurufen (Batch-Datei-Verschachtelung). Die aufrufende Batchdatei wird angehalten, während die aufgerufene (zweite) Batchdatei ausgeführt wird. Wenn die zweite Batchdatei beendet ist (ohne den Befehl CANCEL auszuführen), wird die Ausführung der ursprünglichen Batchdatei beim nächsten Befehl fortgesetzt.
WARNUNG! Wenn Sie eine Batchdatei aus einer anderen Batchdatei heraus ausführen, ohne CALL zu verwenden, wird die ursprüngliche Batchdatei beendet, bevor die andere startet. Diese Methode zum Aufrufen einer Batchdatei aus einer anderen Datei wird üblicherweise als bezeichnet Verkettung. Beachten Sie, dass die Batchdatei A.BTM verwendet Anrufen B und B.BTM Ketten zur Batchdatei C.BTM, beim Verlassen C.BTM (ohne a auszuführen ABBRECHEN Befehl) Verarbeitung der Batchdatei A.BTM wird wieder aufgenommen, als ob es verwendet worden wäre RUFEN SIE C AN.
Reichen Sie das A.BTM:
...
Rufen Sie b an
Echo xxx
Reichen Sie das B.BTM:
...
C
Reichen Sie das C.BTM:
...
verlassen
Im obigen Beispiel nach der Ausführung von QUIT Befehl in C.BTM ECHO xxx Befehl in A.BTM wird als nächstes ausgeführt.
Das folgende Batchdateifragment vergleicht eine Eingabezeile mit wp und ruft eine andere Batchdatei auf, wenn sie übereinstimmt:
Eingabe Geben Sie Ihre Auswahl ein: %%option
Wenn „%option“ == „wp“, rufen Sie wp.bat auf
Stapeldateien können bis zu einer Tiefe von 64 Ebenen verschachtelt werden.
Der aktuelle ECHO-Status wird von einer aufgerufenen Batchdatei geerbt.
Die aufgerufene Batchdatei sollte immer entweder zurückkehren (durch Ausführen ihrer letzten Zeile oder durch Verwenden von QUIT Befehl), oder es sollte die Batchdateiverarbeitung mit beenden ABBRECHEN. Starten Sie die ursprüngliche Batchdatei nicht aus der aufgerufenen Datei heraus neu oder rufen Sie sie nicht auf, da dies zu einer Endlosschleife oder einem Stapelüberlauf führen kann.
Um Kompatibilität zu gewährleisten CMD, was das nicht unterstützt GOSUB Wenn Sie einen Befehl für Unterroutinen in derselben Batchdatei verwenden, können Sie eine Unterroutine erstellen, die mit einer Bezeichnung beginnt und mit einem der folgenden Elemente endet:
•das Ende der Batchdatei
•QUIT
•EXIT
Beachten Sie, dass die letzten beiden die Kontrolle NICHT an den CALL-Befehl zurückgeben. Verwenden Sie nicht die RÜCKKEHR Befehl!
Auf die an die Unterroutine übergebenen Parameter kann zugegriffen werden als %1, %2usw., auf die gleiche Weise wie in einer Batchdatei.
CALL gibt einen Exit-Code zurück, der mit dem Rückgabecode der Batchdatei übereinstimmt. Sie können diesen Exit-Code mit testen bedingte Befehle (&& und deine ||).
[VORLÄUFIGE VOLLAUTOMATISCHE TEXTÜBERSETZUNG - muss noch überarbeitet werden. Wir bitten um Ihr Verständnis.] GOSUB und deine benutzerdefinierte Funktionen.