En Bash, ocasionalmente escribiré una lista de comandos y presionaré Enter, y solo más tarde me daré cuenta de que hay un error con algún comando cerca del final de la lista. Sé que si presiono Ctrl+ Cterminará el comando actualmente en ejecución y cancelará el resto de la lista. ¿Hay alguna forma de cancelar el resto de la lista sin terminar el comando actualmente en ejecución?
Por ejemplo, digamos que he escrito algo como
foo; bar
o
foo && bar
donde foo
es un comando de larga duración que es muy importante no interrumpir, y bar
hace algo irreversible y no deseado (por ejemplo, shutdown -h now
o rm -rf /
). Mientras foo
todavía se está ejecutando, ¿hay una forma general de decirle al shell que deje que foo
termine pero que no se ejecute bar
después? (Sí, podría cambiar los permisos bar
para que no sea ejecutable, pero eso no es particularmente conveniente si bar
es algo rm
que quiero usar mientras tanto, ni funcionará si no soy propietario bar
o si bar
es un incorporado).
bar
comando parasome_command
:^bar^some_command
antes de ser ejecutado.