Supongamos que el archivo a leer es test.txt en el directorio actual, con el siguiente contenido:
Google Ejemplo Taobao
Ejemplo 1
#!/bin/bash
while read line
do
echo $line
done < test.txt
while read line
do
echo $line
done < test.txt
El resultado de la ejecución es:
Google Ejemplo Taobao
Ejemplo 2
#!/bin/bash
cat test.txt | while read line
do
echo $line
done
cat test.txt | while read line
do
echo $line
done
El resultado de la ejecución es:
Google Ejemplo Taobao
Ejemplo 3
for line in `cat test.txt`
do
echo $line
done
do
echo $line
done
El resultado de la ejecución es:
Google Ejemplo Taobao
Hay una diferencia entre la lectura línea por línea con for y con while, como:
$ cat test.txt
Google
Ejemplo
Taobao
$ cat test.txt | while read line; do echo $line; done
Google
Ejemplo
Taobao
$ for line in $(<test.txt); do echo $line; done
Google
Ejemplo
Taobao
Ejemplo
Taobao
$ cat test.txt | while read line; do echo $line; done
Ejemplo
Taobao
$ for line in $(<test.txt); do echo $line; done
Ejemplo
Taobao