GNU/Linux >> Tutoriels Linux >  >> Linux

Apprenez les commandes Pgrep et Pkill avec des exemples sous Linux

Linux est apprécié des développeurs et des passionnés. Vous pouvez faire beaucoup de choses que vous ne pouvez généralement pas faire sur des systèmes d'exploitation tels que Windows et OSX.

Linux est le meilleur système d'exploitation pour les programmeurs, les développeurs et tous ceux qui souhaitent comprendre correctement les systèmes d'exploitation. Maintenant, Linux a de nombreuses fonctions et capacités. Aujourd'hui, vous allez découvrir les commandes Linux pgrep et pkill et comment vous pouvez les utiliser pour rendre votre expérience Linux intéressante. Comme son nom l'indique, la commande pgrep est utilisée pour rechercher le processus en fonction du nom et la commande pkill terminera ou tuera le processus en fonction du nom.

Prérequis

  • Un système d'exploitation Linux (les captures d'écran proviennent d'une machine centos/rhel)

commande pgrep

Syntaxe :# modèle pgrep [options]

La plupart des utilisateurs de Linux reconnaissent la commande grep qui est utilisée pour rechercher des mots ou des caractères spécifiques. pgrep fonctionne presque de la même manière. La commande pgrep est utilisée lors de la recherche de processus (basés sur le nom) en cours d'exécution sur le système au moment de l'utilisation.

Plongeons en profondeur dans les exemples de commandes pgrep,

Exemple :1) Répertorier l'ID de processus appartenant à un utilisateur spécifique (-u)

Lorsqu'il est utilisé, pgrep répertorie les ID de processus qui correspondent aux critères que vous spécifiez. Par exemple, lorsque vous tapez ;

[[email protected] ~]# pgrep -u apache httpd
1274
1275
1278
1282
1283
1284
1286
1291
[[email protected] ~]#

Le système répertorie tous les processus appelés httpd appartenant à l'utilisateur apache.

Exemple :2) Répertorier tous les processus appartenant à plusieurs utilisateurs

Supposons que nous voulons répertorier tous les processus appartenant à l'utilisateur root et apache, exécutez la commande suivante,

[[email protected] ~]# pgrep -u apache,root

Ici, les utilisateurs sont séparés par des virgules (,)

Sortie :

Exemple :3) Compter le nombre de processus de correspondance (-c)

Supposons que nous voulions compter le nombre de processus appartenant à apache et à l'utilisateur root, exécutez la commande ci-dessous

[[email protected] ~]# pgrep -u apache -c
8
[[email protected] ~]# pgrep -u root -c
95
[[email protected] ~]#

Dans la commande ci-dessus, l'option "-c" est utilisée pour compter le nombre de processus associés à un utilisateur.

Exemple :4) Répertorier les ID de processus avec le nom du processus (-l &-a)

Supposons que nous voulions répertorier les identifiants de processus et le nom de processus associés à un utilisateur, puis utiliser -l ou -a option dans la commande pgrep. L'option -l ne listera que le nom du processus tandis que -a listera le chemin complet du nom du processus,

[[email protected] ~]# pgrep -u apache -l
4353 httpd
4354 httpd
4355 httpd
4356 httpd
4357 httpd
4358 httpd
4359 httpd
4360 httpd
[[email protected] ~]#

[[email protected] ~]# pgrep -u apache -a
4353 /usr/sbin/httpd -DFOREGROUND
4354 /usr/sbin/httpd -DFOREGROUND
4355 /usr/sbin/httpd -DFOREGROUND
4356 /usr/sbin/httpd -DFOREGROUND
4357 /usr/sbin/httpd -DFOREGROUND
4358 /usr/sbin/httpd -DFOREGROUND
4359 /usr/sbin/httpd -DFOREGROUND
4360 /usr/sbin/httpd -DFOREGROUND
[[email protected] ~]#

Exemple 5) Répertorier les identifiants de processus associés à un utilisateur à l'aide d'un délimiteur personnalisé (-d)

Utilisez '-d ' dans pgrep pour répertorier les identifiants de processus de l'utilisateur en utilisant un délimiteur personnalisé, supposons que nous répertorions les identifiants de processus associés à l'utilisateur apache séparés par une virgule (,) ou un espace.

[[email protected] ~]# pgrep -u apache -d,
4353,4354,4355,4356,4357,4358,4359,4360
[[email protected] ~]# pgrep -u apache -d" "
4353 4354 4355 4356 4357 4358 4359 4360
[[email protected] ~]#

Exemple :6) Liste le nom du processus le plus récent et son identifiant (-n)

Supposons que nous voulons répertorier le nom du processus le plus récent et ses identifiants appartenant à l'utilisateur root, exécutez la commande pgrep ci-dessous

Syntaxe :

# pgrep -u -n -l

[[email protected] ~]# pgrep -u root -n -l
11255 kworker/0:2
[[email protected] ~]#

Exemple :7) Liste le nom du processus le plus ancien et son identifiant (-o)

Supposons que nous voulions répertorier le nom du processus le plus ancien et ses identifiants appartenant à l'utilisateur root, exécutez la commande pgrep ci-dessous

Syntaxe :

# pgrep -u -o -l

[[email protected] ~]# pgrep -u root -o -l
1 systemd
[[email protected] ~]#

Exemple :8) Processus de recherche avec son nom

Supposons que nous voulions lister tous les identifiants de processus associés au processus postgres

[[email protected] ~]# pgrep postgres -l
1233 postgres
1234 postgres
4465 postgres
4469 postgres
[[email protected] ~]#

Et c'est ainsi que nous utilisons pgrep. Passons à la commande pkill

commande pkill

La commande pkill est utilisée pour tuer les processus via la ligne de commande. Contrairement à la commande kill, pkill n'a pas besoin que vous mettiez l'ID du processus que vous essayez de terminer.

Alors, comment utilisez-vous pkill? Simple, tapez pkill avec le nom du processus que vous voulez tuer en entrée.

Syntaxe :

# pkill [options]

Exemple :9) Tuez le processus par son nom (pkill {process_name})

Par exemple, si vous souhaitez tuer le processus postgres, vous tapez simplement ;

[[email protected] ~]# pkill postgres
[[email protected] ~]#

Si le processus postgres est en cours d'exécution, il sera terminé instantanément.

Exemple :10) Arrêter le processus en envoyant un signal différent (–signal)

Par défaut, la commande pkill utilise "SIGTERM ” signal lors de son exécution. Nous pouvons changer ce signal par défaut en utilisant "–signal ” dans la commande pkill, par exemple,

[[email protected] ~]# pkill --signal SIGKILL postgres
[[email protected] ~]#

Exemple :11) processus de mise à mort basé sur la commande complète (-f)

Nous pouvons demander à la commande pkill de tuer un processus basé sur la commande complète au lieu du nom du processus en utilisant le -f option. Qu'est-ce que ça veut dire? Supposons que deux commandes ping s'exécutent sur votre système.

ping google.com

ping linuxtechi.com

Maintenant, si l'exigence est uniquement de mettre fin à la commande "ping google.com" à l'aide de pkill. Vous pouvez utiliser pkill de la manière suivante :

[[email protected] ~]# pkill -f "ping google.com"
[[email protected] ~]#

Notez que l'option -f est utilisée. Si vous aviez utilisé ;

[[email protected] ~]# pkill ping

alors les deux commandes seront terminées.

Réflexions finales

Dans ce guide, vous avez tout appris sur les commandes pgrep et pkill à l'aide d'exemples pratiques.

En résumé, pgrep est une commande utilisée lors de la recherche de processus en cours d'exécution sur le système au moment de l'utilisation. Sa syntaxe est pgrep [options] pattern.

D'autre part, pkill est utilisé pour tuer des processus via la ligne de commande. Sa syntaxe est pkill [options] .

Vous pouvez utiliser les deux commandes pour tirer davantage parti des capacités et de la flexibilité de Linux. Maintenant que vous avez toutes les infos, qu'en pensez-vous ? Veuillez laisser un commentaire, et nous serons heureux de vous répondre.


Linux
  1. Commande Linux wc avec exemples

  2. Commande Linux Tee avec exemples

  3. Commande JQ sous Linux avec exemples

  4. Exemples de commandes pgrep sous Linux

  5. Exemples de commandes pkill sous Linux

Commande Linux ip avec exemples

Commande Tr sous Linux avec des exemples

15 Commande Linux ps avec exemples

Commande Killall sous Linux avec des exemples

Commande de CD Linux avec exemples

La commande Wait sous Linux expliquée avec des exemples