Espero recibir críticas por esto, pero no puedo encontrar la respuesta en ningún lado. Parece que debería ser tan obvio. A veces, cuando escribo un comando incorrecto en un terminal bash, el cursor salta a la siguiente línea sin ningún error ni nada. No puedo decir qué hice mal. Es como si estuviera atrapado en el programa. Recreación:
$ tidy
Yo: "¡Vaya! Eso no es lo que quise escribir ..."
:q
Yo: "Eso no funcionó ..."
:exit
:quit
exit
quit
/exit
/quit
-exit
-quit
-wtf???
Sé que me equivoqué, pero ¿cómo vuelvo al mensaje sin cerrar el terminal?
shell
command-line
terminal
kill
David Kennedy
fuente
fuente
:q
en realidad funcionó para mí; ¿No es eso un comando Vim?Respuestas:
Siempre puedes probar cosas obvias como
^C
,^D
(eof), Escape, etc., pero si todo falla, generalmente termino suspendiendo el comando con^Z
(Control-Z), que me vuelve a poner en el shell.Luego hago un
ps
comando y tomo nota del PID (id de proceso) del comando y luego emito un comandokill thePID
(kill -9 thePID
si el primero no funcionó) para finalizar la aplicación.Tenga en cuenta que esta no es una forma ordenada (sin juego de palabras) de terminar la aplicación / comando y corre el riesgo de quizás no guardar algunos datos, etc.
Un ejemplo (lo habría usado
tidy
pero no lo tengo instalado):fuente
SIG_IGN
a decir eso, entonces ¿qué haremos?LESS='+/^JOB CONTROL' man bash
.%%
se refiere al "trabajo actual".Intenta presionar Ctrl- Do Ctrl- C. Si falla, elimine el proceso.
Intentando con el
tidy
comando que mencionaste, Ctrl- Dfunciona.fuente
CTRL+C
También es bueno para Windows CMD.Otra solución (no mencionada ya) es enviar la
SIGQUIT
señal usando ctrl+\Es más fuerte que un ctrl+c
fuente
CTRL+D
== exit shell command
y
CTRL+ C
== terminate the current process, Of course may be the given software handle it and
CTRL+Ddoens't work
Por supuesto, producen un
kernel signal
si quieres saber más, lee:fuente