Tomemos un simple for loop
#!/bin/bash
for i in `seq 1 10`;
do
echo $i
done
El punto y coma de AFAIK en los scripts de bash hace que el shell ejecute el comando actual sincrónicamente y luego pase al siguiente. Al presionar Intro, literalmente, es lo mismo, excepto que no le permite ingresar el siguiente comando, vaciando el búfer de inmediato.
Entonces, ¿por qué Shell no puede interpretar la siguiente línea?
for i in `seq 1 10`; do; echo $i; done
¿Cómo funciona esto for looprealmente?

do.do. Además, esta respuesta explica por qué debe eliminar el punto y coma después de 'do'.$inecesita ser parte de un nombre de archivo? ¿Necesita comillas dobles?El punto y coma después
does un error y no debe estar allí.Lo siguiente funciona correctamente:
fuente