Normalement, l'interpréteur de commandes attend la fin de la commande
en cours avant d'en accepter une nouvelle et il se trouve donc bloqué
dans les situations envisagées ci-dessus.
Heureusement, on dispose de plusieurs moyens d'action sur la commande en
cours.
Le plus brutal, est C-c qui interrompt
définitivement la commande, sans possibilité de reprise.
On obtient C-c en appuyant sur la touche c alors que la
touche Control (ou Ctrl) est enfoncée.
On peut aussi suspendre la commande courante par C-z (Control z).
Une commande que l'on vient de suspendre peut être relancée
par la commande fg (comme foreground).
On peut également la relancer en arrière-plan par la
commande bg (comme background).
Une commande qui s'exécute en arrière-plan laisse
l'interpéteur de commande disponible.
Une commande peut être directement lancée en arrière-plan
en ajoutant un & à la fin.
Par exemple, la commande :
xterm &
est équivalente à la
séquence suivante :
xterm
C-z
bg
Et si on a lancé une commande comme xeyes &, que peut-on
faire ?
Il est clair que C-c ou C-z n'agissent que sur la commande
de premier-plan.
Et, comme on peut avoir plusieurs commandes en arrière-plan, il faut
pouvoir désigner celle sur laquelle on veut agir.
On lance alors la commande ps qui nous donne le pid
du processus concerné que l'on utilise ensuite dans une commande
kill appropriée, voir ps et
kill ci-dessous.
On remarquera que l'on peut ainsi tuer son bash ... mais on s'en lasse vite !
C-c
Interrompt définitivement la commande de premier plan, sans
possibilité de reprise.
C-z
Suspend la commande de premier plan.
Elle peut être relancée par les commandes fg ou
bg.
fg
La commande fg permet de relancer au premier plan la dernière
commande, qu'elle soit suspendue ou non (cas d'une commande
d'arrière-plan).
bg
La commande bg permet de relancer en arrière-plan la
dernière commande suspendue.
ps
La commande ps, utilisée sans argument, liste tous les
processus attaché au terminal.
Chaque ligne affichée commence par le PID qui est le
numéro qui identifie chaque processus dans le système.
On repère ainsi le pid d'un processus que l'on pourra
supprimer par la commande kill.
kill
La commande kill s'utilise en général avec une option
qui indique l'action voulue et prend en paramètre le pid
du processus concerné.
On utilise surtout :
kill -KILL pid qui interrompt
définitivement (comme C-c)
ou
kill -STOP pid qui suspend (comme C-z),
on peut relancer ensuite par kill -CONT pid
(équivalent à fg ou bg).
Pour toutes suggestions, commentaires ou remarques, email : Philippe.Chassignet@polytechnique.fr