GNU/Linux >> LINUX-Kenntnisse >  >> Linux

4 Möglichkeiten, einen Prozess zu beenden – kill, killall, pkill, xkill

Foto mit freundlicher Genehmigung:seiho

Der Kill-Befehl wird verwendet, um ein Signal an einen Prozess zu senden oder einen Prozess zu beenden. Wir verwenden normalerweise kill -SIGNAL PID, wobei Sie die PID des Prozesses kennen.

Es gibt andere Möglichkeiten, einen Prozess effektiv zu beenden — Beenden eines Prozesses nach Namen, Beenden eines Prozesses durch Angabe eines Teils des Namens, Beenden eines Prozesses durch Zeigen auf den Prozess mit dem Cursor usw.,

Lassen Sie uns in diesem Artikel 4 Möglichkeiten zum Beenden eines Prozesses betrachten.

1. Kill-Befehl – ​​Beenden Sie den Prozess, indem Sie seine PID angeben

Alle unten aufgeführten Kill-Konventionen senden das TERM-Signal an den angegebenen Prozess. Für die Signale kann entweder der Signalname oder die Signalnummer verwendet werden. Sie müssen die PID für den Prozess nachschlagen und als Argument zum Beenden angeben.

$ kill -TERM pid

$ kill -SIGTERM pid

$ kill -15 pid

Beispiel:Beenden Sie den Firefox-Prozess.

$ ps -ef | grep firefox
1986 ?        Sl     7:22 /usr/lib/firefox-3.5.3/firefox

$ kill -9 1986

2. Killall-Befehl – ​​Prozesse nach Namen beenden

Anstatt einen Prozess anhand seiner PID anzugeben, können Sie den Namen des Prozesses angeben. Wenn mehr als ein Prozess mit diesem Namen läuft, werden alle beendet.
Beispiel:Alle Firefox-Prozesse beenden

$ killall -9 firefox

3. Pkill-Befehl – ​​Sendet basierend auf seinem Namen ein Signal an den Prozess

Sie können ein Signal an jeden Prozess senden, indem Sie den vollständigen Namen oder einen Teil des Namens angeben. Sie müssen also nicht die PID des Prozesses herausfinden, um das Signal zu senden.

Beispiel:SIGTERM an alle Prozesse senden, die sample in ihrem Namen haben.

$ pkill sample

Pkill-Beispiel:

Vor dem Senden des Signals können Sie überprüfen, welche Prozesse den Kriterien entsprechen, indem Sie „pgrep -l“ verwenden, das die Prozess-ID und den Prozessnamen der übereinstimmenden Prozesse anzeigt.

In diesem Beispiel sind alle Prozesse darauf ausgelegt, das Signal zusammen mit seiner PID in signal-log zu protokollieren.

$ pgrep -l sample
12406 sample-server.p
12425 sample-server.p
12430 sample-garbagec

$ pkill -USR1 sample

$ cat signal-log
Name: ./sample-server.pl Pid: 12406 Signal Received: USR1
Name: ./sample-server.pl Pid: 12425 Signal Received: USR1
Name: ./sample-garbagecollector.pl Pid: 12430 Signal Received: USR1

Hinweis: Der Teil des Namens, den Sie angeben, sollte innerhalb der ersten 15 Zeichen des Prozessnamens liegen.

4. Xkill-Befehl – ​​Töte einen Client durch X-Ressource

xkill ist der einfachste Weg, ein fehlerhaftes Programm zu beenden. Wenn Sie einen Prozess beenden möchten, starten Sie xkill, das einen Fadenkreuz-Cursor anbietet. Klicken Sie mit der linken Maustaste auf das Fenster, um diesen Prozess abzubrechen.

$ xkill
Select the window whose client you wish to kill with button 1....
xkill:  killing creator of resource 0x1200003

Hinweis: Tatsächlich weist xkill XServer an, den Client zu beenden.


Linux
  1. Nachkommen verarbeiten?

  2. kill-Befehlsbeispiele in Linux

  3. pkill-Befehlsbeispiele in Linux

  4. Wie kann ich einen Prozess anhand des Namens anstelle der PID beenden?

  5. Linux-Skript zum Beenden des Java-Prozesses

Kill-Befehl unter Linux

Killall-Befehl in Linux mit Beispielen

5 schnelle Möglichkeiten, einen Prozess in Linux zu beenden

Wie man einen Prozess unter Linux beendet

Meistern Sie den Linux-Kill-Prozess mit ps, pgrep, pkill und mehr

So beenden Sie Prozesse in Linux mit kill, killall und pkill