accueil > Gestion des processus > pgrep

pgrep : trouver les identifiants de processus

La commande `pgrep` recherche dans la liste des processus en cours d'exécution selon des critères spécifiques (par exemple, nom du processus, utilisateur, ligne de commande complète) et affiche les identifiants de processus (PID) correspondants. Elle est plus efficace et plus simple que la combinaison des commandes `ps` et `grep` pour trouver les processus souhaités.

Aperçu

`pgrep` filtre les processus selon divers critères tels que le nom du processus, l'ID utilisateur, le terminal, l'ID du processus parent (PPID) et renvoie les PID correspondants. Il est utile pour trouver et contrôler des processus spécifiques ou vérifier leur état dans des scripts.

Fonctionnalités principales

  • Prise en charge de la recherche basée sur les expressions régulières
  • Filtrage des processus par utilisateur/groupe
  • Recherche possible sur la ligne de commande complète
  • Options pour sélectionner le processus le plus ancien ou le plus récent

Options principales

Critères de recherche

Format de sortie et tri

Commande générée :

Essayez de combiner les commandes.

Description:

`pgrep` Exécute la commande.

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

Exemples d'utilisation

Trouver le PID d'un processus spécifique

pgrep sshd

Trouve l'identifiant du processus nommé `sshd`.

Trouver les PID des processus par utilisateur

pgrep -u root

Trouve les identifiants de tous les processus exécutés par l'utilisateur `root`.

Afficher le PID et le nom ensemble

pgrep -l firefox

Affiche l'identifiant et le nom du processus `firefox` ensemble.

Rechercher par ligne de commande complète

pgrep -f "apache2.*worker"

Trouve les identifiants des processus dont la ligne de commande complète contient à la fois `apache2` et `worker`.

Trouver un processus avec une correspondance exacte

pgrep -x ssh

Trouve l'identifiant du processus dont le nom est exactement `ssh`. (`sshd` est exclu)

Trouver le processus le plus récent

pgrep -n chrome

Trouve l'identifiant du processus `chrome` le plus récemment démarré.

Conseils et précautions

`pgrep` est puissant, mais une mauvaise utilisation peut entraîner la terminaison ou l'impact de processus involontaires. Soyez donc prudent.

Intégration avec pkill

Au lieu de transmettre manuellement les PID trouvés par `pgrep` à la commande `kill`, vous pouvez utiliser la commande `pkill` pour terminer directement les processus ou leur envoyer un signal avec les mêmes critères de recherche que `pgrep`, ce qui est pratique. Par exemple, `pkill -f "nginx.*worker"` termine directement les processus worker de `nginx`.

Utilisation des expressions régulières

`pgrep` prend en charge les expressions régulières par défaut. Vous pouvez les utiliser pour des correspondances de motifs complexes.

  • `pgrep 'httpd|nginx'` trouve les processus `httpd` ou `nginx`.
  • En l'utilisant avec l'option `-f`, comme dans `pgrep -f '^/usr/bin/python3.*script.py$'`, vous pouvez trouver précisément l'exécution d'un script spécifique.

Option -x pour une correspondance exacte

`pgrep` effectue une correspondance partielle par défaut. Par exemple, `pgrep ssh` trouve non seulement `ssh` mais aussi `sshd`. Pour trouver uniquement les processus dont le nom est exactement `ssh`, utilisez l'option `-x`. Ceci est important pour éviter d'affecter des processus involontaires.


Commandes de la même catégorie