Gibt es eine Möglichkeit, alle Instanzen eines bestimmten Programms mit einem Befehlszeilenbefehl zu beenden?
Gibt es eine Möglichkeit, alle Instanzen eines bestimmten Programms mit einem Befehlszeilenbefehl zu beenden?
Antworten:
killall program
taskkill /IM program.exe
killall
, na ja, tötet alle : tehtable.wordpress.com/2009/12/07/note-to-self-solaris-linux
/F
Flagge, um gewaltsam zu töten.
Unter Windows 7 (Vista?) Bevorzuge ich, tskill processname
da Sie sich keine Befehlszeilenoptionen merken oder am Ende .exe schreiben müssen. z.B:
tskill chrome
Bricht alle Chromprozesse ab.
Unter Windows XP habe ich pskill
die pstools- Suite verwendet, die eine ähnliche Syntax verwendet. Beide Befehle können auch auf Remotecomputern ausgeführt werden, wenn Sie über Administratorrechte verfügen.
Auf vielen Systemen finden Sie die Befehle kill
und killall
.
Wenn Sie die PID des Prozesses kennen, können Sie verwenden kill PID
Der erste beendet nur einen bestimmten Prozess. (Oder besser gesagt, es sendet ein Signal, z. B. das Signal zum Beenden). Sie können einen Wrapper mit ps und grep schreiben, um alle Prozesse abzubrechen, die mit einem Namen übereinstimmen.
oder, falls installiert, könnten Sie verwenden killall
Beachten Sie jedoch, dass nicht alle killall-Befehle dasselbe tun. Unter Solaris werden alle Prozesse abgebrochen. Ich wiederhole alles. Nicht nur die, die Sie wollten, sondern jeder Prozess, zu dem Sie berechtigt sind, wird getötet. Stellen Sie sicher, dass Sie die Handbuchseite Ihres lokalen Systems überprüfen und ob es sich um einen Link zu killall5 handelt.
killall5
ist der Böse.
Unter Linux lautet der Befehl entweder pkill
oder killall
. pkill
wird allgemein empfohlen, da auf einigen Systemen killall
tatsächlich alle Prozesse abgebrochen werden .
killall
tatsächlich alle beendet. Das ist keine schlechte Sache, aber wenn Sie nicht erwarten, dass es sich auf einem anderen System anders verhält, erhalten Sie möglicherweise einen pädagogischen Moment .