¿Qué puedo hacer si bash deja de hacer eco?

10

Una de las aplicaciones que uso en el trabajo a veces se enrosca con mi bash y ya no veo mi propia entrada. Es decir

$ echo foo
foo
$

se convierte

$ foo $

Intenté ejecutar incorrectamente, stty -echolo que empeoró las cosas y ahora deja de aceptar todos los comandos que ponen mi entrada en un estado que solo >aparece cada vez que salto la línea y nada más.

¿Qué debería haber hecho?

Kit Sunde
fuente
2
Intenta correr resetpara empezar bien. Por supuesto no se puede entrar ahora ningún comando en este modo de terminal desde otro intento algo así como cat >/dev/pts/3donde 3está su número de terminal problemática y luego pulsa las teclas siguientes: ESC c ENTER Ctrl-D.
jimmij

Respuestas:

19

El remedio habitual para cosas como esta es

stty sane

No stty -echodebería haber empeorado esto, ya que solo apaga el eco de la entrada, y ya lo tenía.

El hecho de que diga retornos solo hace >que aparezcan significa que ha comenzado algo que está causando continuidad en las siguientes líneas, por ejemplo, echo 'lo hará porque está esperando que el cierre 'termine la cadena. Otras cosas causarán esto también, como if something; Está esperando la then ... fiparte.

Probablemente podría haber golpeado ctrl, cen esa etapa, para detenerlo esperando el resto del comando, a menos que el terminal estuviera tan desordenado que tampoco se generaran interrupciones.

wurtel
fuente
Ah eso tiene sentido. Traté de golpear a ambos ctrl + cy ctrl + zparecía no lograr nada.
Kit Sunde
3

Además de la respuesta de @ wurtel (especialmente la explicación probable del >problema), stty echoes lo opuesto a stty -echo, por lo que puede usar eso. También puede usar reset, que generalmente viene con paquetes ncurses.

Peterph
fuente