| auteur : Francois Trazzi
| Par exemple, vous utilisez le shell zsh, et vous voulez savoir à quel(s) PID (Processus IDentification) il(s) est(sont) lié(s)
La commande qui suit me retourne les différents PID de zsh.. PID 1942, 2860, ...
francois@orion ~/developpez/faq $ fuser /bin/zsh
/bin/zsh: 1942e 2860e 2996e 3469m 3487e 4527m 4607e
comme indiqué dans le man, les caractères suivant le PID correspondent à :
c : répertoire courant.
e : programme en cours d'exécution.
f : fichier ouvert. f est omis par défaut.
r : répertoire racine
m : fichier projeté en mémoire, ou bibliothèque partagée.
On observe donc ici que l'on a 5 programmes zsh en cours d'éxecution, et 2 projetés en mémoire
On vérifie la valeur des PID : cela correspond bien aux valeurs retournées par fuser
francois@orion ~/developpez/faq $ ps -aux | grep zsh
francois 1942 0.0 0.0 3560 4 vc/1 S 10:24 0:00 -zsh
francois 2860 0.0 0.9 3900 2484 pts/1 S 13:43 0:00 /bin/zsh
francois 2996 0.0 0.8 3692 2212 pts/2 S 14:01 0:00 /bin/zsh
root 3469 0.0 0.8 3612 2084 pts/1 S 15:25 0:00 zsh
francois 3487 0.0 1.0 3976 2580 pts/1 S 15:25 0:00 zsh
root 4527 0.0 0.9 3768 2308 pts/2 S 19:49 0:00 zsh
francois 4607 0.2 0.8 3728 2268 pts/2 R 20:13 0:00 zsh
francois 4632 0.0 0.2 1904 760 pts/2 R 20:14 0:00 grep zsh
|
| auteur : nyal
| Si le programme n'est pas lancé en tache de fond et que vous avez au terminal de lancement, tapez
control+c. Si cela ne fonctionne pas, vous pouvez essayer control+z pour suspendre le programme et ainsi
récupereer le shell (vous pouvez aussi utiliser un autre terminal) et executer la commande :
nyal $ killall -9 nom_du_programme
nyal $ kill -9 pid_du_programme
Pour identifier le pid du programme, lancer la commande ps:
nyal $ ps -ax | grep nom_du_programme
Le pid du programme est le premier nombre. |
| auteur : nyal
| Le caractere '|' permet de lier des commandes entre elle.
Cela sert pour faire des recherches, des substitutions,... sur des données
nyal $ cat fichier | grep YES
La commande cat envoit le contenu du fichier vers la commande grep qui va le lire. Si vous utilisez une commande
qui ne lit pas de données sur l'entrée standard, cela n'aura aucun resulat
La commande ca
t envoit bien le contenu vers la commande ls qui est une commande qui ne lit pas sur son entré
standard. Par conséquent, le pipe entre les deux commandes ne sert absolument à rien.
Il est tout à fait possible d'enchainer un trés grand nombre de pipe (la limite depend des shells)
nyal $ cat fichier | grep YES | sed 's/YES/NO/'
|
| auteur : nyal
| Ce caractére signifie que la commande sera executé en tache de fond et ainsi vous aurez toujours accés au shell
pour éxecuter d'autres commandes sur le terminal.
|
Ce document issu de
www.developpez.com
est soumis à la licence
GNU FDL
traduit en français
ici
Permission vous est donnée de distribuer, modifier des copies de cette page tant que cette note apparaît clairement.
|