Welchen Befehl kann ich an das Ende einer Batch-Datei setzen, um zu verhindern, dass die Konsole nach der Ausführung der Datei automatisch geschlossen wird?
Antworten
Zu viele Anzeigen?Möglichkeit 1: Erstellen Sie einfach 2 .bat-Dateien und schreiben Sie in die erste Datei:
start <filename> // name of 2nd batch file
exit
Batch-Datei 2 ist die Datei, die am Ende nicht geschlossen wird. Wenn Sie nun Batch Nr. 1 öffnen, wird die 2. gestartet und schließt sich selbst. Wenn der 2. Stapel fertig ist, wird er nicht vollständig geschlossen (solange Sie nicht exit am Ende setzen).
Möglichkeit 2: Stapeldatei 1:
call <filename>
cls
echo End of file
pause
<any code you want>
Wenn die 2. Datei zu Ende ist, wird wieder zu Datei 1 übergegangen und der Rest der Datei ausgegeben. Damit kann man sogar Fehlerbehandlungen machen. Wenn Nr. 1 abstürzt, geht es zu Nr. 2 und zeigt es an
Ganz einfach, fügen Sie cmd in die letzte Zeile von bat ein, ABER! wenn Sie den Systempfad zurücksetzen oder löschen, müssen Sie cmd mit dem vollständigen Pfad beginnen, z. B.:
%windir%\system32\cmd.exe
Zum Beispiel habe ich eine Bat-Datei zum Zurücksetzen von jdk auf die alte Version wie folgt:
PATH=C:\Program Files\Java\jdk1.6.0_45\bin;C:\apache-ant-1.7.1\bin
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45
%windir%\system32\cmd.exe
Seit ich den Systempfad zurückgesetzt habe, muss ich cmd mit dem vollständigen Pfad ausführen, sonst kann das System cmd.exe nicht finden, cmd wird nicht ausgeführt und das Fenster wird einfach geschlossen, und die Fehlermeldung wird nicht angezeigt.
- See previous answers
- Weitere Antworten anzeigen