aperçu

dans ce tutoriel rapide, vous allez apprendre à trouver L’ID de processus Parent sous Linux à partir de la ligne de commande.

vous apprendrez également à trouver les enfants d’un ID de processus Parent donné en utilisant la commandeps.

Nous allons également expliquer comment afficher une arborescence de processus complète d’un processus parent à l’aide de la commandepstree. Très utile lorsque vous souhaitez identifier tous les enfants d’un parent, leur Id et les noms, qui vous peut avoir besoin pour tuer un processus.,

variable D’environnement D’ID de processus Parent

L’ID de processus parent de votre contexte actuel est exposé en tant que variable d’environnement. Pour voir la valeur, vous pouvez la faire écho.

echo $PPID

Par exemple, si vous êtes SSH‘d dans un serveur Linux, la valeur de la balise $PPID variable d’environnement de l’ID de la balise SSH processus.

la variable d’environnement affiche uniquement l’ID du processus., Pour voir quel est le processus parent, nous pouvons utiliser la commandeps avec la variable d’environnement$PPID.

ps -e | grep $PPID

Trouver le Parent ID de Processus d’un Processus en cours d’Exécution

afin De déterminer le processus parent d’un processus spécifique, nous utilisons la balise ps commande.

ps -o ppid= -p 9801

la sortie ne contient que l’ID du processus parent lui-même. En utilisant la sortie de la commande ps, nous pouvons déterminer le nom du processus.,

ps -e | grep 9801
2029 ? 00:00:14 apache2

liste des processus enfants d’un ID de processus Parent

avec l’ID de processus parent, nous pouvons rechercher tous les processus enfants utilisant le parent en utilisant la commandepgrep.

pgrep -laP $PPID

pour un parent SSH typique, la sortie listera les processus suivants

30797 -bash30798 /usr/lib/openssh/sftp-server

afficher L’arborescence des processus

Un autre utilitaire utile est la commandepstree. Cette commande affichera une arborescence de processus enfants d’un ID de processus parent., Par exemple, pour afficher une arborescence de processus enfants à partir du processus parent actuel, vous devez exécuter la commande suivante.

pstree $PPID
sshd─┬─bash───pstree └─sftp-server

dans l’exemple ci-dessus, nous pouvons voir que le processussshd est notre ID de processus Parent actuel (PPID), et qu’il a deux processus enfants. Le processus de l’enfant sont bash et sftp-server.

nous pouvons également voir que le processusbash a son propre enfant, qui est la commandepstree que nous venons d’exécuter.,

la commande pstree peut également afficher l’ID de processus de chaque processus dans votre arborescence. Pour afficher les ID de processus, vous utilisez l’indicateur-p. Voici un exemple d’arborescence de processus pour un serveur web Apache.

pstree -p 2029