accueil > Gestion des processus > pkill

pkill : Terminer/Envoyer un signal à des processus par nom

pkill est une commande qui trouve des processus basés sur leur nom ou d'autres attributs et leur envoie un signal. Il est similaire à `pgrep`, mais la différence est qu'il envoie directement un signal aux processus trouvés. Il est utile pour terminer ou redémarrer tous les processus d'un nom spécifique en une seule fois.

Aperçu

pkill utilise les mêmes fonctionnalités de correspondance de motifs que `pgrep` pour trouver des processus, mais il envoie le signal spécifié aux processus trouvés. Le signal par défaut est SIGTERM (15), qui demande au processus de se terminer normalement. Vous pouvez envoyer SIGKILL avec l'option `-9`, mais soyez prudent car il s'agit d'une terminaison forcée.

Fonctionnalités principales

  • Envoyer un signal par nom de processus
  • Filtrer selon diverses conditions telles que l'utilisateur, le terminal, le chemin complet
  • Signal par défaut : SIGTERM (terminaison normale)
  • Possibilité de terminaison forcée (SIGKILL)

Options principales

La commande pkill permet de sélectionner précisément les processus auxquels envoyer un signal grâce à diverses options.

Signaux et correspondance

Filtrage des processus

Commande générée :

Essayez de combiner les commandes.

Description:

`pkill` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Montre diverses façons d'utiliser pkill pour terminer des processus spécifiques ou leur envoyer des signaux.

Terminaison normale du processus nginx

pkill nginx

Envoie le signal SIGTERM à tous les processus nommés nginx pour demander leur terminaison normale.

Terminaison forcée du processus firefox appartenant à un utilisateur spécifique

pkill -u john -9 firefox

Termine de force le processus firefox exécuté par l'utilisateur spécifié (par exemple, 'john').

Terminer tous les processus dont la ligne de commande complète inclut 'my_script.sh'

pkill -f my_script.sh

Termine tous les processus dont la ligne de commande complète, et pas seulement le nom du processus, inclut 'my_script.sh'.

Terminer tous les processus en cours d'exécution sur un terminal spécifique (tty1)

pkill -t tty1

Envoie le signal SIGTERM à tous les processus en cours d'exécution sur le terminal tty1.

Envoyer le signal HUP au processus httpd (redémarrage)

pkill -HUP httpd

Envoie le signal SIGHUP au processus httpd pour lui demander de recharger son fichier de configuration ou de redémarrer.

Conseils et précautions

Points à considérer et conseils utiles lors de l'utilisation de pkill.

Précautions

  • Utilisez `pkill -9` (SIGKILL) comme dernier recours. Il ne donne pas aux processus la possibilité d'effectuer des tâches de nettoyage, ce qui peut entraîner une corruption de données ou une instabilité du système.
  • Pour éviter de terminer des processus involontairement, il est conseillé de vérifier d'abord quels processus seront sélectionnés avec `pgrep`. (Ex: `pgrep -l <pattern>`)
  • Vous pouvez utiliser des expressions régulières pour spécifier des motifs. (Ex: `pkill 'apache.*'`)
  • Par défaut, pkill cible uniquement les processus de l'utilisateur actuel. Des privilèges root sont nécessaires pour terminer les processus d'autres utilisateurs.

Commandes de la même catégorie