Sous Unix, quand je cours stty intr ^M
(^ M est Control-M) Je me suis effectivement empêché d'exécuter des commandes. Chaque fois que j'appuie sur la touche "retour", j'envoie le signal d'interruption au shell et ma commande n'est jamais exécutée. Supposons que j'ai eu cela dans mon .profile (je n'ai pas réellement ..); comment pourrais-je me sortir de ce trou après une session bash avec ^ M réglé pour déclencher un signal d'interruption?
Chris
stty intr ^c^j
travaux. Vous pouvez aussi utiliser^v
pour "échapper" au^m
, alorsstty intr ^c^v^j
travaux. La seule bizarrerie est que le^j
et^v
et^m
doivent être des codes de clé de contrôle; la^c
peut être soit un code de touche de contrôle, soit deux caractères, caret et v.En général (c’est-à-dire que si les choses sont encore plus compliquées et que vous ne savez pas comment les réparer), vous pouvez exécuter
stty
d'un autre tty utilisantSi vous ne savez pas quel tty a les paramètres modifiés, utilisez
who
oups
pour savoir ce que vous utilisez, et justestty < /dev/whatever
chacun à son tour jusqu'à trouver celui qui ne va pas.la source
J'allais suggérer
stty sane ^J
, mais cela ne réinitialise pas l’interruption. Vous devrez faire quelque chose comme ça:le
^C
représente le Control-C. Vous pouvez généralement obtenir cela en appuyant sur Control-V / Control-C.la source