Noto que algunos ejemplos de bash para bucles se extienden en varias líneas en ejemplos
for VARIABLE in file1 file2 file3
do
command1 on $VARIABLE
command2
commandN
done
(por ejemplo, aquí http://www.cyberciti.biz/faq/bash-for-loop/ ) ¿Cómo ingreso una nueva línea en el terminal bash (uso masilla)? Cuando presiono enter al final de una línea, el sistema lo ejecuta.
bash
line-editor
giorgio79
fuente
fuente

bashpuede usar la combinación de tecladoCtrl + x + epara 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á.Respuestas:
Cuando presionas Enteral final de:
El shell no puede ejecutar nada ya que ese
forciclo no está terminado. Entonces, en su lugar, imprimirá un aviso diferente, el$PS2aviso (generalmente>), hasta que ingrese el cierredone.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 comportamientobash, puede agregar a su~/.inputrc:(
\026siendo el^Vpersonaje).fuente
Ctrl-JPara empezar, yCtrl-Dpara terminar, terminé funcionando bien para mí.