Shell按行读取文件的方法有很多,下面写出三种方法:
写法一:
#!/bin/bash
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
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
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是按行读取,如果行内文字有空格,则分开读取,即一次读取一个字符串。

本文介绍了三种Shell脚本中常见的按行读取文件的方法,包括使用while循环、cat结合while循环以及for循环读取文件内容,并解释了for循环与while循环在读取含有空格的行时的区别。
1906

被折叠的 条评论
为什么被折叠?



