孤舟点点

导航

 

  Shell按行读取文件的方法有很多,下面写出三种方法:

写法一:

#!/bin/bash
#描述:
#       while循环读行操作
#作者:孤舟点点
#版本:1.0
#创建时间:2017-11-09 04:08:52
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

while read line
do
  echo $line
done < filename(待读取的文件)

写法二:

#!/bin/bash
#描述:
#      cat后读行操作
#作者:孤舟点点
#版本:1.0
#创建时间:2017-11-09 04:08:52
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

cat filename(待读取的文件) | while read line
do
  echo $line
done

写法三:

#!/bin/bash
#描述:
#      for循环读行操作,与while读行有区别
#作者:孤舟点点
#版本:1.0
#创建时间:2017-11-09 04:08:52
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

for line in `cat filename(待读取的文件)`
do
  echo $line
done

注:for循环读行操作,与while读行的区别

while是完全按行读取,不管行内有多少段文字;

for是按行读取,如果行内文字有空格,则分开读取,即一次读取一个字符串。

posted on 2017-11-10 23:49  孤舟点点  阅读(8917)  评论(0编辑  收藏  举报