echo from lines of a file

patz picture patz · Mar 4, 2012 · Viewed 26.3k times · Source

i have a file "myfile.txt" that have the next content:

hola mundo
hello word

and i want work with every line

for i in `cat myfile.txt`; do echo $i; done

i hope this give me

hola mundo
hello word

firts one line, then the other, but get

hola
mundo
hello
word

as I can demanding results until newline instead of each space?

ty all

Answer

Johannes Weiss picture Johannes Weiss · Mar 4, 2012

That's better

cat myfile.txt | while read line; do
    echo "$line"
done

or even better (doesn't launch other processes such as a subshell and cat):

while read line; do
    echo "$line"
done < myfile.txt

If you prefer oneliners, it's obviously

while read line; do echo "$line"; done < myfile.txt