Meine Manpage dokumentiert nicht den Unterschied zwischen
kill <pid>
und
kill -9 <pid>
Da diese verschiedene Dinge tun, warum ist die -9 nicht in der kill
Manpage dokumentiert? Ich dachte, es sei vielleicht ein Shell-spezifisches Ding, also habe ich auch in der Bash-Manpage nachgesehen, aber kein Glück.
Bonusfrage: Was macht die -9?
kill <pid>
) ist TERM.KILL
undSTOP
Signale sogenannte nicht abfangbare Signale sind. Das heißt, wenn einTERM
Signal an einen Prozess gesendet wird, kann er es abfangen und verschiedene "Abschalt" -Operationen ausführen, die er ausführen muss. DasKILL
Signal stoppt den Vorgang sofort.man 7 signal
Das Standardsignal ist TERM, mit dem das Programm, das gerade beendet wird, es abfangen und vor dem Beenden eine Bereinigung durchführen kann. Ein Programm kann es auch ignorieren, wenn es so geschrieben ist.
Wenn Sie -9 oder KILL angeben, kann das Programm das Signal nicht abfangen, bereinigen oder ignorieren. Es sollte nur als letztes Mittel verwendet werden.
Verwenden Sie
kill -l
(Buchstabe ell) , um die Liste der Zahlen und Signalnamen in Bash anzuzeigen.quelle
Ich benutze Ubuntu Linux.
Kill-Befehle senden grundsätzlich ein Signal an die Verarbeitung, um es zu beenden. Zur Vereinfachung komplexer Verhaltenserwartungen im Alltag bietet der Befehl kill verschiedene Optionen.
Wie oben erklärt, mit allen der Definition entsprechenden Kill-Numbers-Optionen.
Ich möchte ein paar Zeilen hinzufügen.
Wie Sie oben sehen, sind dies alles Kill-Optionen, die Sie erhalten, wenn Sie Ubuntu Linux ausführen.
Bestimmte Kill-Signale sind jedoch allen * NIX-Varianten gemeinsam.
kill -9 ist die SIGKILL-Option und der Kernel kann dieses Signal nicht ignorieren. Dies bedeutet, dass die Option -9 oder SIGKILL beachtet wird und der Prozess sofort beendet wird. Denken Sie daran, dass dieser Prozess nicht von Anwendungsprogrammen verarbeitet werden kann.
kill -15 sendet dagegen das SIGTERM-Signal, dh es wartet, bis der Prozess ordnungsgemäß heruntergefahren wurde, bevor er beendet wird. Dies ist das Standardsignal.
quelle