shell读取文件的每一行

来源:互联网 发布:sjf算法例题 编辑:程序博客网 时间:2024/04/28 21:14

原文地址:http://hi.baidu.com/7636553/item/8476a5cdd8b5bf13b67a2433

 

写法一:

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

#!/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 $(<file); do echo $line; done

1111

2222

3333

4444

555

 

原创粉丝点击