shell读取文件的每一行

写法一:

----------------------------------------------------------------------------

#!/bin/bash

 

while read line

do

    echo $line

done < filename(待读取的文件)

----------------------------------------------------------------------------

 

写法二:

----------------------------------------------------------------------------

#!/bin/bash

 

cat filename(待读取的文件) | while read line

do

    echo $line

done

----------------------------------------------------------------------------

 

写法三:

----------------------------------------------------------------------------

for line in `cat filename(待读取的文件)`

do

    echo $line

done

----------------------------------------------------------------------------

 

说明:

for逐行读和while逐行读是有区别的,如:

$ cat file

1111

2222

3333 4444 555

 

$ cat file | while read line; do echo $line; done

1111

2222

3333 4444 555

 

$ for line in $(

1111

2222

3333

4444

555