Wie man den Prozess mit Namen tötet

Wie man den Prozess mit Namen tötet

Wie man einen Prozess auf einem Linux -System tötet. Die Anlaufstelle dafür ist normalerweise mit der töten Befehl, bei dem ein Prozess durch seine PID getötet wird (Prozess -ID).

Manchmal ist es jedoch bequemer, einen Prozess mit Namen zu töten, anstatt die Routine zu durchlaufen, seine PID jedes Mal zu lokalisieren. Es gibt zwei Befehle, mit denen wir einen Prozess mit Namen töten können, die Killall und Pkill sind.

In diesem Tutorial werden wir beide durchgehen alle töten Und Pkill Befehle und zeigen Beispiele dafür, wie sie verwendet werden können, um Prozesse nur mit Namen abzutöten.

In diesem Tutorial lernen Sie:

  • Wie man einen Prozess mit Namen mit Killall und Pkill tötet
Töten eines Prozesses mit Namen unter Linux Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Jede Linux -Distribution
Software Pkill, Killall
Andere Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

Tötenprozess mit Namen mit Killall und Pkill



Das erste, was Sie sich wahrscheinlich wundern, ist, wie unterscheidet sich Killall von Kill unterscheidet?. Es gibt zwei wichtige Unterschiede. Erstens akzeptiert Killall einen Prozessnamen als Argument und nicht als PID. Und der andere Unterschied ist, dass Killall, wie der Name schon sagt. Vergleichen Sie dies dem regulären töten Befehl, der nur die Prozesse beendet, die Sie ausdrücklich angeben.

Im Gegensatz zu PKill verlangt Killall, dass Sie den genauen Namen eines Prozesses angeben. Schauen wir uns einige Beispiele dafür an, wie es funktioniert, indem wir einige Fälle desselben Bash -Skripts mit nur einem Befehl töten.

$ Killall Beispiel.Sch 
Verwenden Sie den Befehl Killall, um den Prozess mit Namen zu töten

In diesem Fall ist es definitiv viel einfacher, all diese Prozesse mit einem einzigen Befehl zu töten, als jede PID mit anzugeben töten. Jedoch, alle töten Diskriminiert und zielt nicht alle Instanzen unseres Skripts im Beispiel. Wenn wir nur zwei von ihnen töten wollten, müssten wir immer noch auf die Verwendung der Nutzung zurückgreifen töten Befehl.

Der andere Befehl, den wir hätten verwenden können, ist Pkill. Dies unterscheidet sich von alle töten Indem wir nicht den genauen Namen eines Prozesses angeben müssen. Mit unserem vorherigen Beispiel konnten wir alle drei Prozesse von töten Beispiel.Sch Mit einem Befehl wie diesem:

$ pkill Examp 
Verwenden Sie den Befehl PKILL, einen Prozess mit Namen oder Muster zu töten

Wie Sie sich vorstellen können, sollten Sie mit dem viel Vorsicht walten lassen Pkill Befehl, weil Sie einen Prozess, den Sie nicht beabsichtigt haben. Zum Beispiel, wenn wir ein anderes Skript hatten Beispiel2.Sch Durch das Laufen würde der vorherige Befehl es ebenfalls beendet. Manchmal mag dies eine gute Sache sein, aber seien Sie sich nur bewusst, dass das Musteranpassung manchmal auf mehr Prozesse erstrecken kann, als Sie erkennen. Sie könnten die immer verwenden PGREP Befehl, um eine Vorschau zu erhalten, wie viele Prozesse Pkill würde enden.

$ pGrep Beispiel 17555 17557 17559 

Daher, PKILL -Beispiel würde drei Prozesse töten.

Notiere dass der alle töten Und Pkill Befehle akzeptieren die meisten der gleichen Optionen wie die regulären töten Befehl. Zum Beispiel eine gemeinsame Option mit angegebenem mit töten Ist -9 a Sigkill Signal auf einen Prozess. Die Syntax funktioniert bei den beiden anderen Befehlen gleich. Siehe das Beispiel unten.

$ Kill -9 1234 $ Killall -9 Beispiel.Sh $ pkill -9 Beispiel.Sch 

Abschluss

In diesem Leitfaden haben wir gesehen, wie man einen Prozess mit dem Namen mit dem tötet alle töten Und Pkill Befehle. Jedes dieser Befehle wird mit ihrer eigenen umfangreichen Liste von Optionen ausgestattet, von denen sich viele überschneiden oder auf dem basieren töten Befehl. Trotzdem haben die Befehle Killall, Pkill und Kill ihre eigenen Nischen, die sie füllen, und es ist hilfreich, alle drei in Ihrem Linux Admin -Toolgürtel zu haben. Schauen Sie sich die Mannseiten an, wenn Sie ein Gefühl für die fortgeschrittenere Nutzung bekommen möchten.

$ MAN KILLALL $ MAN PKILL $ MAN Kill 

Verwandte Linux -Tutorials:

  • So verwenden Sie den Befehl Killall unter Linux
  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Mastering -Bash -Skriptschleifen beherrschen
  • GNU/Linux Allgemeiner Fehlerbehebungsleitfaden für Anfänger
  • Dinge zu installieren auf Ubuntu 20.04
  • Mint 20: Besser als Ubuntu und Microsoft Windows?
  • Wie man ein Signal an Kinderprozesse aus einer Bash verbreitet…
  • Hung Linux System? Wie man zur Befehlszeile entkommt und…
  • Verschachtelte Schleifen in Bash -Skripten
  • Spezielle Bash -Variablen mit Beispielen