Yo leí que es malo para las cosas de escritura como for line in $(command)
, la forma correcta parece ser en su lugar:
command | while IFS= read -r line; do echo $line; done
Esto funciona muy bien. Pero, ¿qué sucede si lo que quiero repetir es el contenido de una variable , no el resultado directo de un comando?
Por ejemplo, imagine que crea el siguiente archivo quickfox
:
The quick brown
foxjumps\ over -
the
lazy ,
dog.
Me gustaría poder hacer algo como esto:
# This is just for the example,
# I could of course stream the contents to `read`
variable=$(cat quickfox);
while IFS= read -r line < $variable; do echo $line; done; # this is incorrect