Ces deux commandes affichent une liste des processus existants sur le système, selon les critères que vous voulez. pstree affiche un résultat plus organisé que ps -f.
Lancer ps sans argument montrera uniquement les processus dont vous êtes l'initiateur et qui sont rattachés au terminal que vous utilisez :
$ ps PID TTY TIME CMD 5162 ttya1 00:00:00 zsh 7452 ttya1 00:00:00 ps
Les options sont nombreuses, nous ne citerons que les plus courantes :
a
:
affiche aussi les processus lancés par tous les
utilisateurs ;
x
: affiche les
processus n'ayant pas de terminal de contrôle ou un
terminal de contrôle différent de celui que vous
êtes en train d'utiliser ;
u
: affiche pour chaque
processus le nom de l'utilisateur qui l'a lancé et
l'heure de son lancement.
Il existe beaucoup d'autres options. Reportez-vous à la page de manuel ps(1) pour plus de renseignements.
La sortie de
cette commande est divisée en champs : celui qui vous intéressera
le plus est le champ PID
, qui contient
l'identifiant du processus. Le champ CMD
contient, quant à lui, le nom de la commande exécutée. Une façon très
courante d'invoquer ps est la suivante :
$ ps ax | less
Vous obtenez ainsi une liste de tous les processus en cours d'exécution. Ceci permet de repérer le ou les processus problématique(s) avant de les éliminer.
La commande
pstree affiche les processus sous forme
d'arborescence et permet de les visualiser par leurs liens de parenté.
Ainsi, pour tuer une série de processus de la même famille, il suffira
d'en découvrir l'ancêtre commun. Il est préférable d'utiliser
l'option -p
, qui affiche le PID de chaque
processus, ainsi que l'option -u
, laquelle vous
donnera le nom de l'utilisateur ayant lancé le
processus. L'arborescence étant généralement longue, il est plus
facile d'invoquer pstree de cette façon :
$ pstree -up | less