论坛首页 综合技术论坛

shell读取文件的每一行写法

浏览 4003 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2018-09-16  

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

 

1111

 

2222

 

3333

 

4444

 

555

 

   发表时间:2019-01-30  
有个东西叫 AWK 是各种 linux 标配
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics