CMD BAT DATEI BEENDEN?

4 Antworten

Da CMD sich selbst beenden würde, wenn du den Prozess "cmd.exe" versuchst zu killen, musst du über die Prozess-ID gehen. Die findest du raus mit Hilfe einer Befehlsreihe aus FOR, FINDSTR und TASKLIST:

title asdfghuio
FOR /F "tokens=2" %A IN ('tasklist /NH /V /FI "imagename eq cmd.exe" ^| findstr /V asdfghuio') DO taskkill /PID %A

Als Erkennungsmerkmal für das aktuell gestartete CMD-Fenster legst du den Fenstertitel "asdfghuio" fest oder irgendwas anderes einzigartiges, was in der Batchdatei wohl nicht als Titel steht.

Der TASKLIST-Befehl listet alle gestarteten Prozesse auf. /NH entfernt die Überschriften (No Header). /V zeigt mehr Infos an, darunter auch den Fenstertitel. /FI initiiert einen Filter, hier "cmd.exe" als Prozessname.

In der Ausgabe des TASKLIST-Befehls schließt der FINDSTR-Befehl alle Zeilen aus, die "asdfghuio" enthalten, was wohl nur das aktuelle CMD-Fenster sein dürfte. Übrig bleiben alle "cmd.exe"-Prozesse außer dem aktuellen Fenster.

Für jeden gefundenen Prozess wird der TASKKILL-Befehl verwendet, der aber nicht "cmd.exe" beendet, sondern den Prozess mit der Prozess-ID "%A".

Hast du die selbst über die Konsole gestartet? Strg+C ....

Falls nicht, dann schau doch im Taskmanager nach und kill den Prozess..

Exit ist der Befehl

Aber nur in der Batch oder Cmd  anwendbar

Gruß Batch ist Best ,; QF :)))