Sur Linux, la commande PS affiche des informations sur les processus actifs dans le système.
Avec top, pstree, on l’utilise souvent dans un terminal en ligne de commandes pour obtenir des informations sur les processus utilisateur ou système.
Cela peut nous donner de nombreuses informations utiles sur ces processus, y compris leur PID (ID de processus), TTY, l’utilisateur exécutant une commande ou une application, etc.
Comme beaucoup de commandes Linux, la commande PS possède beaucoup d’options ce qui peut rendre son utilisation compliquée.
Dans ce tutoriel, je vous présente la commande PS, ses options et différents exemples d’utilisation.

Table des matières
- 1 Utiliser la commande PS pour lister les processus sur Linux
- 2 5 exemples d’utilisation de la commande PS
- 2.1 Afficher les processus avec l’arborescence
- 2.2 Obtenir les informations sur les threads
- 2.3 Afficher l’utilisation CPU ou mémoire des processus
- 2.4 Afficher les processus d’un utilisateur en particulier
- 2.5 Afficher ou obtenir le PID d’un processus
- 2.6 Pour afficher le processus lié au pid numéro 767 :
- 3 Liens
Utiliser la commande PS pour lister les processus sur Linux
Utilisation basique et syntaxe de la commande PS
La syntaxe paraît simple puisque on utilise la commande avec ou sans options.
La principale difficulté est qu’il existe énormément d’options.
ps [OPTIONS]
Sans aucune option, ps n’affiche pas la liste complète des processus, ni beaucoup d’informations.
Ainsi on obtient :
root@linux:~# ps
PID TTY TIME CMD
11608 pts/0 00:00:00 sudo
11609 pts/0 00:00:00 su
11610 pts/0 00:00:00 bash
14326 pts/0 00:00:00 ps
Lister tous les processus en cours d’exécution
Il existe deux formes de syntaxes pour lister l’intégralité des processus avec ps, la forme UNIX et la forme BSD.
Avec la forme BSD, on obtient un peu plus d’informations sur les processus.
La syntaxe est :
ps aux
- a – Processus de tous les utilisateurs
- U – Afficher le format orienté utilisateur (affiche des informations supplémentaires sur les processus en cours d’exécution)
- X – Liste des processus qui n’appartiennent à aucune TTY
Pour trier la sortie sur une colonne, par exemple l’utilisation mémoire :
ps aux --sort=-%mem
La syntaxe de la forme UNIX :
ps -ef
- -e – Affiche les processus en cours d’exécution de tous les utilisateurs
- -f – Affiche la liste complète du format (affiche des informations supplémentaires sur les processus d’exécution)
Comprendre et savoir lire la sortie de ps
Voici un descriptif des colonnes de la sortie PS (forme UNIX) :
- PID – l’ID de processus. Habituellement, lors de l’exécution de la commande PS, les informations les plus importantes que l’utilisateur recherchent est le processus PID. Connaître le PID vous permet de tuer un processus de défaut de fonctionnement. Tty – le nom du terminal de contrôle du processus
- TIME – L’heure cumulative du processeur du processus, illustrée en minutes et en secondes.
- CMD – Le nom de la commande utilisée pour démarrer le processus.
Voici les explications de la sortie de la commande PS en forme BSD.
On retrouve le même type de colonne qu’avec la commande top.
- USER – l’utilisateur qui exécute le processus.
- %CPU – L’utilisation du processeur du processus.
- %MEM – le pourcentage de la taille du réglage de résident du processus dans 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 (Zombie), S (Dormant) et R (en cours d’exécution). Démarrer – le moment où la commande a commencé.
L’option -o vous permet de filtrer la colonne pour n’afficher que celle désirée.
Par exemple pour n’afficher que les colonnes pid et comm :
ps -efo pid,comm
ps auxo pid,comm
Enfin bien entendu, vous pouvez aussi utiliser grep, sort pour filtrer ou trier les colonnes.
ps -ef | grep root
5 exemples d’utilisation de la commande PS
Je vous donne la plupart du temps les équivalents UNIX et BSD.
Afficher les processus avec l’arborescence
ps -ejH
ps axjf
Notez que vous pouvez utiliser aussi la commande pstree.
Obtenir les informations sur les threads
L’option -f affiche une liste complète au format.
Cette option peut être combinée à de nombreuses autres options de style UNIX pour ajouter des colonnes supplémentaires. Il provoque également l’imprimé des arguments de commande.
Lorsqu’il est utilisé avec -l, le NLWP (nombre de threads) et les colonnes LWP (ID de thread) seront ajoutées.
ps -eLf
ps axms
Nous pouvons simplement exécuter PS pour énumérer les threads dans l’état R,D :
ps -eo s,pid,cmd,user | grep ^[RD] | sort | uniq -c | sort -nbr | head -20
Afficher l’utilisation CPU ou mémoire des processus
Pour afficher l’utilisation la plus élevée de la CPU et de la mémoire par des processus exécutés par root :
ps u | sort -k 1 -r | head -10
Exécutez la commande suivante pour afficher l’utilisation de la CPU pour la commande spécifique :
ps -eo pcpu,args | sort -k 1 -r | head -8
Pour afficher des processus pour tous les utilisateurs et non attachés à un terminal en liste de formats complets :
ps -auxf | sort -nr -k 3 | head -10
Afficher les processus d’un utilisateur en particulier
Parfois il est utile de vérifier les processus en cours d’exécution pour un utilisateur spécifique :
ps -f -U www-data -u www-data
Afficher ou obtenir le PID d’un processus
Pour obtenir le PID du processus clamsmtpd :
ps -C clamsmtpd -o pid=
Pour afficher le processus lié au pid numéro 767 :
ps -q 767 -o comm=
Liens
- Commande PS : lister les processus sur Linux
- Linux : exécuter des commandes en arrière-plan
- Commande Nohup sur Linux : utilisations et exemples
- Commande jobs, fg et bg sur Linux : utilisations et exemples
- Top : lister les processus sur Linux
- Utiliser la commande Kill, Killall, pkill pour arrêter un processus sur Linux
- Comment utiliser les commandes nice et renice sur Linux pour définir des priorités de processus
- Comment trouver et tuer un processus Zombie sur Linux (Defunct)
- 6 exemples d’utilisation de la commande Kill sur Linux
- Qu’est-ce que le load average sur Linux
- Mesurer le débit et lister les connexions réseaux sur Linux
- La mémoire sur Linux : comment ça marche
- PID (Process IDentifier) : l’identifiant des processus
- VMStat : Mesures de performance Linux