KILLALL(1) Commandes de l'utilisateur KILLALL(1)

killall - tuer des processus par leur nom

killall [-Z, --context pattern] [-e, --exact] [-g, --process-group] [-i, --interactive] [-n, --ns PID] [-o, --older-than TIME] [-q, --quiet] [-r, --regexp] [-s, --signal SIGNAL-SIGNAL] [-u, --user user] [-v, --verbose] [-w, --wait] [-y, --younger-than TIME] [-I, --ignore-case] [-V, --version] [--] name ...
killall -l
killall -V, --version

killall envoie le signal à tous les processus exécutant une des commandes spécifiées. Si aucun nom de signal est fourni, SIGTERM est utilisé.

Les signaux peuvent être spécifiés par nom (par exemple, -HUP ou -SIGHUP) ou par numéro (par exemple, -1) ou par l'option -s.

Si le nom de commande n'est pas une expression rationnelle (option -r) et contient une barre oblique (/), les processus exécutant ce fichier en particulier seront sélectionnés pour être tués indépendamment de leur nom.

killall retourne un code de retour nul si au moins un processus a été tué pour chaque commande listée ou si aucune commande a été listée et au moins un processus correspondait aux critères de recherche de -u et -Z. killall retourne un code non nul dans les autres cas.

Un processus killall ne se tue jamais lui-même (mais il peut tuer d'autres processus killall).

-e, --exact
Exiger une correspondance exacte pour des noms très longs. Si un nom de commande est plus long que 15 caractères, le nom complet peut ne pas être disponible (c-à-d qu'il est dans le fichier d'échange). Dans ce cas, killall tuera tout ce qui correspond aux 15 premiers caractères. Avec -e, de telles entrées sont ignorées. killall affiche un message pour chaque entrée ignorée si -v est spécifié en plus de -e.
-I, --ignore-case
Ignorer la casse lors des recherches de correspondances sur les noms des processus.
-g, --process-group
Tuer le groupe de processus auquel le processus appartient. Le signal de fin est envoyé une seule fois par groupe, même si plusieurs processus appartenant au même groupe de processus ont été trouvés.
-i, --interactive
Demander, interactivement, une confirmation avant de tuer.
-l, --list
Lister tous les noms de signaux connus.
-n, --ns
Établir la correspondance sur l'espace de noms du PID pour le PID donné. Par défaut, la correspondance est établie pour tous les espaces de noms.
-o, --older-than
Correspondre uniquement au processus qui sont plus vieux (démarrés avant) que le temps spécifié. Le temps est spécifié avec un nombre décimal suivi d'une unité. Les unités sont s,m,h,d,w,M,y pour secondes, minutes, heures, jours, semaines, mois et années respectivement.
-q, --quiet
Ne pas se plaindre si aucun processus a été tué.
-r, --regexp
Interpréter le motif du nom de processus comme une expression rationnelle étendue POSIX comme défini par regex(3).
-s, --signal, -SIGNAL
Envoyer ce signal au lieu de SIGTERM.
-u, --user
Ne tuer que les processus que l'utilisateur spécifié possède. Les noms de commandes sont optionnels.
-v, --verbose
Indiquer si le signal a été envoyé avec succès.
-V, --version
Afficher les informations de version.
-w, --wait
Attendre que tous les processus tués soient morts. killall vérifie une fois par seconde si un des processus tués existe encore et ne retourne que si plus aucun processus subsiste. Notez que killall peut attendre indéfiniment si le signal a été ignoré, n'a pas eu d'effet ou si le processus reste dans un état zombie.
-y, --younger-than
Correspondre uniquement au processus qui sont plus jeunes (démarrés après) que le temps spécifié. Le temps est spécifié avec un nombre décimal suivi d'une unité. Les unités sont s,m,h,d,w,M,y pour secondes, minutes, heures, jours, semaines, mois et années respectivement.
-Z, --context
Specify security context: kill only processes having security context that match with given extended regular expression pattern. Must precede other arguments on the command line. Command names are optional.

/proc
emplacement du système de fichiers proc

Tuer par fichier ne fonctionne que si les exécutables restent ouverts durant l'exécution. Cela signifie que les exécutables impures ne peuvent pas être tués de cette manière.

Gardez à l'esprit que killall nom peut ne pas avoir l'effet désiré sur des systèmes non linux, en particulier, quand il est exécuté par un utilisateur privilégié.

killall -w ne détecte pas si un processus disparaît et est remplacé par un nouveau processus avec le même PID entre deux balayages.

Si des processus changent leur nom, killall peut être incapable d'établir une correspondance avec eux.

Il y a une limite sur les noms qui peuvent être spécifiés sur la ligne de commande de killall. Ce nombre est la taille d'un entier long non signé multipliée par 8. Pour la plupart des systèmes 32 bits, cette limite est 32. De manière similaire, elle vaut habituellement 64 pour les systèmes 64 bits.

kill(1), fuser(1), pgrep(1), pidof(1), pkill(1), ps(1), kill(2), regex(3).
2021-01-11 psmisc