Töte alle Prozesse, die einem Benutzer gehören, mit pkill

Activity Monitor und das traditionelle Befehlszeilenprogramm "kill" sind in der Lage, die meisten Prozessbeendigungserfordernisse zu erfüllen. Wenn Sie jedoch jemals alle Prozesse eines einzelnen Benutzerkontos anvisieren und beenden müssen, wissen Sie, dass dies eine frustrierende Aufgabe sein kann. Mit dem Aktivitätsmonitor können Sie zwar "Andere Benutzerprozesse" sortieren und mehrere Prozesse auswählen, es ist jedoch nicht möglich, mehrere Prozesse gleichzeitig zu beenden. In ähnlicher Weise zielen die standardmäßigen Befehle kill und killall im Allgemeinen auf bestimmte Prozesse ab und nicht auf jede einzelne Aufgabe, die zu einem bestimmten Benutzerkonto gehört. Hier kommt der 'pkill'-Befehl ins Spiel, der es einfach macht, jeden einzelnen Prozess, der zu einem Benutzer gehört, über das Terminal sofort zu beenden.

Wie man alle Prozesse von einem Benutzer mit pkill killt

Die grundlegende Syntax für die Verwendung von pkill zum Beenden aller Benutzerprozesse lautet wie folgt:

pkill -u username

Überprüfen Sie, dass alle Prozesse, die zu diesem Benutzer gehören, mit dem Flag -u des Befehls ps beendet wurden:

ps -u username

Vorausgesetzt, alles lief wie geplant, finden Sie eine leere Liste zurück gemeldet.

pkill unterscheidet nicht zwischen Groß- und Kleinschreibung, dh ein Benutzername von "TestUser" wird genauso identifiziert wie "testuser".

Wenn Sie dies selbst ausprobieren möchten, empfiehlt es sich, die schnelle Benutzerumschaltung zu verwenden, um eine neue Anmeldung mit einem anderen Benutzerkonto einzuleiten oder den ssh-Server zu verwenden und auf einem anderen lokalen Mac auszuführen. Wenn Sie pkill für Ihren eigenen aktiven Benutzernamen verwenden, werden alle Prozesse beendet, einige davon werden sofort aktualisiert, aber viele Hintergrundprozesse werden nicht automatisch neu gestartet. Dies führt zu allen möglichen seltsamen Verhaltensweisen, und je nachdem, was Sie gerade ausgeführt haben, ist es nicht sonderlich überrascht, dass das Betriebssystem so unbrauchbar wird, dass Sie sich entweder abmelden oder erneut starten müssen, wenn der aktive Benutzer neu gestartet wird Der von pkill ausgerichtete Account war entweder root oder administrativ.

Der Befehl pkill ist ein bisschen wie eine Lötlampe, wenn man auf Benutzernamen zeigt, und kann als eine Möglichkeit betrachtet werden, alles, was einem eingeloggten Benutzer gehört, zwangsweise zu beenden, aber das kann auch ein sehr leistungsfähiges Werkzeug für die Fehlersuche und den Umgang mit nicht funktionierenden sein oder Zombie-Prozesse, die trotz Abmeldung eines Benutzers intakt geblieben sind.

Wir haben den Befehl pkill bereits besprochen, um Prozesse mit Platzhaltern und spezifischen Anwendungen / Prozessen eines einzelnen Benutzers zu beenden. Obwohl es seit OS X Mountain Lion erst seit kurzem auf dem Mac verfügbar ist, gibt es es schon seit geraumer Zeit in der Linux-Welt .