¿Cómo borro lo que escribí en el aviso?

16

Escribo un comando muy, muy largo en bash. Vaya, fue el comando equivocado.
A partir de ahora, esto significa que paso por dos infiernos:

  1. Darme cuenta de que mi comando era inútil.
  2. Tener que borrar mi caparazón presionando Backspacehasta que el mensaje esté despejado.

¿Hay una manera mas rápida?

digitxp
fuente

Respuestas:

15

Control + Aentonces Control + K. El primero mueve el cursor al comienzo de la línea, el segundo borra la línea después del cursor.

Una forma más desordenada de hacer esto es presionar enter y luego presionar Control + C. Crédito a @ billc.cn

Si desea borrar todo el mensaje, use Control + L.

soandos
fuente
66
Ctrl + C es más rápido en algunos casos, aunque bastante feo: P
billc.cn
1
No pensé que fuera relevante. Pensé que quería limpiar la línea, no matar un programa en ejecución.
soandos
1
Simplemente escriba algo en bashy presione Ctrl-C y vea lo que obtiene.
billc.cn
2
Ctrl-L borra la pantalla, pero conserva lo que ha escrito.
Alger
3
Entonces eso hace lo contrario de lo que quiere.
soandos
19

Ctrl-U borra la entrada de comando que ha escrito, hasta la posición actual del cursor. Entonces, si lo está usando justo después de haber escrito el comando, pero no ha movido el cursor hacia atrás, borrará todo lo que ha escrito.

Argel
fuente
2
En realidad, "Borra la línea antes de la posición del cursor. Si está al final de la línea, borra toda la línea". Lo cual está cerca, pero no es totalmente exacto todo el tiempo. Es lo opuesto a Ctrl + K
soandos
Buen punto. Sin embargo, en la situación planteada en la pregunta, el cursor probablemente esté al final de la línea, por lo que debería funcionar para este propósito. He arreglado la respuesta para aclarar esto.
Alger
De ahí mi voto a favor.
soandos
@ Para mí, siempre está borrando todo, independientemente de dónde se mueve el cursor hacia atrás o no. echo $0 vuelve /bin/csh.
Geek
1
+1 porque esto funciona tanto en mysql shell como en bash shell: D
wim