killall - Prozesse anhand des Namens töten
killall [
-Z,
--context Muster]
[
-e,
--exact] [
-g,
--process-group]
[
-i,
--interactive] [
-n,
--ns
PID] [
-o,
--older-than ZEIT]
[
-q,
--quiet] [
-r,
--regexp] [
-s,
--signal
SIGNAL,
-SIGNAL] [
-u,
--user
Benutzer] [
-v,
--verbose]
[
-w,
--wait] [
-y,
--younger-than
ZEIT] [
-I,
--ignore-case]
[
-V,
--version] [
--]
Name …
killall -l
killall -V,
--version
killall sendet ein Signal an alle Prozesse, die mit dem angegebenen
Befehl gestartet wurden. Wenn kein Signalname angegeben ist, wird das Signal
SIGTERM gesendet.
Signale können entweder als Name (zum Beispiel
-HUP oder
-SIGHUP), als Nummer (zum Beispiel
-1) oder durch die Option
-s angegeben werden.
Falls der Befehlsname kein regulärer Ausdruck ist (Option
-r) und
einen Schrägstrich (
/) enthält, werden Prozesse, welche
diese bestimmte Datei ausführen, zum Töten vorgesehen,
unabhängig von deren Namen.
killall gibt den Code 0 zurück, falls für jeden der
aufgelisteten Befehle mindestens ein Prozess getötet wurde, oder es
waren keine Befehle aufgelistet und mindestens ein Prozess entsprach den mit
-u und
-Z angegebenen Suchkriterien.
killall gibt
anderenfalls einen von Null verschiedenen Wert zurück.
Ein
killall-Prozess tötet sich niemals selbst (aber könnte
von anderen
killall-Prozessen getötet werden).
-
-e, --exact
- verlangt eine exakte Übereinstimmung für sehr
lange Namen. Falls der Befehlsname länger als 15 Zeichen ist,
könnte der vollständige Name nicht verfügbar sein
(das heißt, er ist ausgelagert). In diesem Fall tötet
killall alles, was mit den ersten 15 Zeichen übereinstimmt.
Mit -e werden solche Einträge übersprungen.
killall gibt eine Meldung für jeden übersprungenen
Eintrag aus, falls -v zusätzlich zu -e angegeben
wird.
-
-I, --ignore-case
- ignoriert bei der Treffersuche die Groß- oder
Kleinschreibung.
-
-g, --process-group
- tötet die Prozessgruppe, zu welcher der Prozess
gehört. Das Tötungssignal wird nur einmal pro Gruppe
gesendet, selbst wenn in der Prozessgruppe mehrere Prozesse gefunden
wurden.
-
-i, --interactive
- bittet vor dem Töten interaktiv um
Bestätigung.
-
-l, --list
- listet alle bekannten Signalnamen auf.
-
-n, --ns
- prüft anhand des PID-Namensraums der angegebenen PID
auf Übereinstimmungen. Standardmäßig wird die
Überprüfung auf alle Namensräume bezogen.
-
-o, --older-than
- prüft nur Prozesse auf Übereinstimmungen, die
älter als die angegebene Zeit sind, also vorher gestartet wurden.
Die Zeit wird als Fließkommazahl mit angehängter Einheit
angegeben. Die Einheiten sind s, m, h, d, w, M, y für Sekunden,
Minuten, Stunden, Tage, Wochen, Monate beziehungsweise Jahre.
-
-q, --quiet
- beschwert sich nicht, falls keine Prozesse getötet
wurden.
-
-r, --regexp
- interpretiert das Prozessnamensmuster als erweiterten
regulären POSIX-Ausdruck gemäß regex(3).
-
-s, --signal, -SIGNAL
- sendet dieses Signal anstelle von SIGTERM.
-
-u, --user
- tötet nur Prozesse, die dem angegebenen Benutzer
gehören. Befehlsnamen sind optional.
-
-v, --verbose
- meldet, wenn das Signal erfolgreich gesendet wurde.
-
-V, --version
- zeigt Versionsinformationen an.
-
-w, --wait
- wartet auf die Beendigung aller getöteten Prozesse.
killall prüft einmal pro Sekunde, ob irgendeiner der
getöteten Prozesse noch existiert und liefert nur ein Ergebnis,
falls keine Prozesse mehr verblieben sind. Beachten Sie, dass
killall unbegrenzt warten könnte, falls das Signal ignoriert
wurde, unwirksam war oder der Prozess in einen Zombie-Zustand
übergegangen ist.
-
-y, --younger-than
- prüft nur Prozesse auf Übereinstimmungen, die
neuer als die angegebene Zeit sind, also später gestartet wurden.
Die Zeit wird als Fließkommazahl mit angehängter Einheit
angegeben. Die Einheiten sind s, m, h, d, w, M, y für Sekunden,
Minuten, Stunden, Tage, Wochen, Monate beziehungsweise Jahre.
-
-Z, --context
- gibt den Sicherheitskontext an: Es werden nur Prozesse
getötet, deren Sicherheitskontext dem des Musters des angegebenen
erweiterten regulären Ausdrucks entspricht. Dies muss anderen
Argumenten in der Befehlszeile vorangestellt werden. Befehlsnamen sind
optional.
- /proc
- Ort des /proc-Dateisystems
Das Töten anhand des Dateinamens funktioniert nur für
ausführbare Programme, die während der Ausführung offen
gehalten werden, das heißt, unsaubere ausführbare Programme
können auf diese Weise nicht getötet werden.
Seien Sie vorsichtig, wenn Sie
killall Name eingeben, weil dies
auf Nicht-Linux-Systemen nicht die gewünschte Wirkung haben
könnte, insbesondere dann, wenn Sie es als privilegierter Benutzer
ausführen.
killall -w erkennt in aufeinanderfolgenden Übrprüfungen
nicht, ob ein Prozess beendet ist und durch einen Prozess mit der gleichen PID
ersetzt wurde.
Falls Prozesse ihren Namen ändern, könnte
killall diese
nicht korrekt erkennen.
Für
killall gibt es eine Begrenzung für die Namen, die in
der Befehlszeile angegeben werden können. Dies ist die
Größe einer vorzeichenlosen Ganzzahl, multipliziert mit 8.
Für die meisten 32-Bit-Systeme ist 32 die Begrenzung, analog dazu ist
sie bei 64-Bit-Systemen üblicherweise auf 64 begrenzt.
kill(1),
fuser(1),
pgrep(1),
pidof(1),
pkill(1),
ps(1),
kill(2),
regex(3).