GNU/Linux >> Tutoriels Linux >  >> Linux

Commande Ps sous Linux (liste des processus)

Sous Linux, une instance en cours d'exécution d'un programme est appelée processus. Parfois, lorsque vous travaillez sur une machine Linux, vous devrez peut-être savoir quels processus sont en cours d'exécution.

Il existe un certain nombre de commandes que vous pouvez utiliser pour trouver des informations sur les processus en cours d'exécution, avec ps , pstree , et top étant les plus couramment utilisés.

Cet article explique comment utiliser le ps pour répertorier les processus en cours d'exécution et afficher des informations sur ces processus.

Comment utiliser ps Commande #

La syntaxe générale pour le ps commande est la suivante :

ps [OPTIONS]

Pour des raisons historiques et de compatibilité, le ps La commande accepte plusieurs types d'options :

  • Options de style UNIX, précédées d'un seul tiret.
  • Options de style BSD, utilisées sans tiret.
  • Options longues GNU, précédées de deux tirets.

Différents types d'options peuvent être mélangés, mais dans certains cas particuliers, des conflits peuvent apparaître, il est donc préférable de s'en tenir à un seul type d'option.

Les options BSD et UNIX peuvent être regroupées.

Dans sa forme la plus simple, lorsqu'il est utilisé sans aucune option, ps imprimera quatre colonnes d'informations pour au moins deux processus en cours d'exécution dans le shell actuel, le shell lui-même et les processus qui s'exécutent dans le shell lorsque la commande a été invoquée.

ps

La sortie inclut des informations sur le shell (bash ) et le processus exécuté dans ce shell (ps , la commande que vous avez saisie) :

  PID TTY          TIME CMD
 1809 pts/0    00:00:00 bash
 2043 pts/0    00:00:00 ps

Les quatre colonnes sont étiquetées PID , TTY , TIME , et CMD .

  • PID - L'identifiant du processus. Habituellement, lors de l'exécution de ps , l'information la plus importante recherchée par l'utilisateur est le PID du processus. Connaître le PID vous permet de tuer un processus défectueux.
  • TTY - Le nom du terminal de contrôle du processus.
  • TIME - Le temps CPU cumulé du processus, affiché en minutes et secondes.
  • CMD - Le nom de la commande qui a été utilisée pour démarrer le processus.

La sortie ci-dessus n'est pas très utile car elle ne contient pas beaucoup d'informations. La vraie puissance du ps la commande vient lorsqu'elle est lancée avec des options supplémentaires.

Le ps La commande accepte un grand nombre d'options qui peuvent être utilisées pour afficher un groupe spécifique de processus et différentes informations sur le processus, mais seules quelques-unes sont nécessaires dans l'utilisation quotidienne.

ps est le plus souvent utilisé avec la combinaison d'options suivante :

Formulaire BSD :

ps aux
  • Le a l'option indique ps pour afficher les processus de tous les utilisateurs. Seuls les processus non associés à un terminal et les processus des chefs de groupe ne sont pas affichés.
  • u représente un format orienté utilisateur qui fournit des informations détaillées sur les processus.
  • Le x l'option indique ps pour lister les processus sans terminal de contrôle. Il s'agit principalement de processus lancés au démarrage et exécutés en arrière-plan.

La commande affiche des informations dans onze colonnes intitulées USER , PID , %CPU , %MEM , VSZ , RSS , STAT , START , TTY , TIME , et CMD .

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.8  77616  8604 ?        Ss   19:47   0:01 /sbin/init
root         2  0.0  0.0      0     0 ?        S    19:47   0:00 [kthreadd]
...

Nous avons déjà expliqué PID , TTY , TIME et CMD Étiquettes. Voici une explication des autres libellés :

  • USER - L'utilisateur qui exécute le processus.
  • %CPU - L'utilisation cpu du processus.
  • %MEM - Le pourcentage de la taille de l'ensemble résident du processus par rapport à la mémoire physique de la machine.
  • VSZ - Taille de la mémoire virtuelle du processus en KiB.
  • RSS - La taille de la mémoire physique utilisée par le processus.
  • STAT - Le code d'état du processus, tel que Z (zombi), S (dormir) et R (en cours d'exécution).
  • START - L'heure à laquelle la commande a commencé.

Le f l'option indique ps pour afficher une arborescence des processus parent à enfant :

ps auxf

Le ps La commande vous permet également de trier la sortie. Par exemple, pour trier la sortie en fonction de l'utilisation de la mémoire, vous utiliserez :

ps aux --sort=-%mem

Formulaire UNIX :

ps -ef
  • Le -e l'option indique ps pour afficher tous les processus.
  • Le -f est une liste au format complet, qui fournit des informations détaillées sur les processus.

La commande affiche des informations dans huit colonnes intitulées UID , PID , PPID , C , STIME , TIME , et CMD .

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 19:47 ?        00:00:01 /sbin/init
root         2     0  0 19:47 ?        00:00:00 [kthreadd]
...

Les étiquettes qui ne sont pas déjà expliquées ont la signification suivante :

  • UID - Identique à USER , l'utilisateur qui exécute le processus.
  • PPID - L'identifiant du processus parent.
  • C - Identique à %CPU , l'utilisation du processeur du processus.
  • STIME - Identique à START , l'heure à laquelle la commande a démarré.

Pour afficher uniquement les processus en cours d'exécution en tant qu'utilisateur spécifique, tapez la commande suivante, où linuxize est le nom de l'utilisateur :

ps -f -U linuxize -u linuxize

Format défini par l'utilisateur #

Le o L'option vous permet de spécifier quelles colonnes sont affichées lors de l'exécution de ps commande.

Par exemple, pour imprimer des informations uniquement sur le PID et COMMAND , vous exécuteriez l'une des commandes suivantes :

ps -efo pid,comm
ps auxo pid,comm

Utilisation de ps Avec d'autres commandes #

ps peut être utilisé en combinaison avec d'autres commandes via la tuyauterie.

Si vous souhaitez afficher la sortie du ps commande, une page à la fois, dirigez-la vers le less commande :

ps -ef | less

La sortie du ps la commande peut être filtrée avec grep . Par exemple, pour afficher uniquement le processus appartenant à l'utilisateur root que vous exécuteriez :

ps -ef | grep root

Conclusion #

Le ps La commande est l'une des commandes les plus couramment utilisées lors du dépannage de problèmes sur les systèmes Linux. Il a de nombreuses options, mais généralement, la plupart des utilisateurs utilisent soit ps aux ou ps -ef pour recueillir des informations sur les processus en cours d'exécution.

Pour plus d'informations sur ps , tapez man ps dans votre terminal.

Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.


Linux
  1. 30 exercices de processus Linux pour les administrateurs système

  2. Commande Linux ps

  3. Commande Linux ls - Lister les fichiers

  4. kill Exemples de commandes sous Linux

  5. Exemples de commandes renice sous Linux

Commande Linux PS avec exemples

Commande SS sous Linux

Surveillance des processus sous Linux

Comment tuer un processus sous Linux

Comment lister les disques sous Linux

Exemples de commandes lsattr sous Linux