OVH Cloud OVH Cloud

interrompre un shell par

5 réponses
Avatar
fembe
Bonjour,
j'ai un shell relativement long qui enchaine des commandes courtes ,
entre ces commandes j'aimerai pouvoir interrompre le shell par l'appuie
sur le clavier d'une touche quelconque ( esc par exemple) est ce possible ?
Bien sur si je n'appuie pas sur la touche le shell continue sans blocage.

5 réponses

Avatar
Jean-Louis Liagre
fembe wrote:
Bonjour,
j'ai un shell relativement long qui enchaine des commandes courtes ,
entre ces commandes j'aimerai pouvoir interrompre le shell par l'appuie
sur le clavier d'une touche quelconque ( esc par exemple) est ce possible ?
Bien sur si je n'appuie pas sur la touche le shell continue sans blocage.


Avec la plupart des shells: Control-Z suspend la commande en cours.

fg reprend l'exécution en premier plan
bg fait continuer la tâche en arrière plan.

Avatar
Vincent Lefevre
Dans l'article <444cc827$0$21046$,
Jean-Louis Liagre écrit:

Avec la plupart des shells: Control-Z suspend la commande en cours.


s/shells/terminaux/

C'est lié au terminal et non au shell. Et vu que SIGSTOP n'est pas
trappable, le shell ne peut même pas modifier le comportement.

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / SPACES project at LORIA

Avatar
Stephane Chazelas
2006-04-26, 16:25(+00), Vincent Lefevre:
Dans l'article <444cc827$0$21046$,
Jean-Louis Liagre écrit:

Avec la plupart des shells: Control-Z suspend la commande en cours.


s/shells/terminaux/

C'est lié au terminal et non au shell. Et vu que SIGSTOP n'est pas
trappable, le shell ne peut même pas modifier le comportement.


<Ctrl-Z> n'envoie pas un SIGSTOP mais un SIGTSTP qui est
trappable.

Et on peut modifier le caractere qui genere un SIGTSTP par

stty susp '<autre-chose>'

--
Stéphane


Avatar
Nicolas George
Vincent Lefevre wrote in message
<20060426162202$:
Et vu que SIGSTOP n'est pas
trappable, le shell ne peut même pas modifier le comportement.


Le terminal n'envoie pas un SIGSTOP mais un SIGTSTP, qui est attrapable ou
tout ce qu'on veut. Ça permet aux applications qui changent l'état du
terminal de le restaurer avant de se suspendre effectivement.

Avatar
Vincent Lefevre
Dans l'article ,
Stephane Chazelas écrit:

<Ctrl-Z> n'envoie pas un SIGSTOP mais un SIGTSTP qui est
trappable.


Ah oui, effectivement (le man stty est peu clair, ne donnant pas le
nom exact du signal, contrairement à POSIX...).

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / SPACES project at LORIA