Cuando presionas Enteral final de:
for VARIABLE in file1 file2 file3
El shell no puede ejecutar nada ya que ese for
ciclo no está terminado. Entonces, en su lugar, imprimirá un aviso diferente, el $PS2
aviso (generalmente >
), hasta que ingrese el cierre done
.
Sin embargo, una vez que >
se muestra, no puede volver a editar la primera línea.
Alternativamente, en lugar de escribir Enter, puede escribir Ctrl-VCtrl-J. De esa manera, el carácter de nueva línea (aka ^J
) se ingresa sin que se acepte el búfer actual , y luego puede volver a editar la primera línea más adelante.
En zsh
, puede presionar Alt-Entero EscEnterpara insertar un carácter de nueva línea sin aceptar el búfer actual. Para obtener el mismo comportamiento bash
, puede agregar a su ~/.inputrc
:
"\e\C-m": "\026\n"
( \026
siendo el ^V
personaje).
bash
puede usar la combinación de tecladoCtrl + x + e
para abrir el contenido del símbolo del sistema en un editor como vim, donde puede trabajar más fácilmente; cuando haya terminado, puede salir del editor y el comando se ejecutará.