shell逐行读取文件的方法

时间:2023-02-13 11:24:56

1、while循环

function while_read_LINE(){
while read LINE
do
echo $LINE
done < $FILENAME
}

2、重定向法;管道法

function While_read_LINE(){
cat $FILENAME | while read LINE
do
echo $LINE
done
}

3、文件描述符法

这种方法分2步骤,
第一,通过将所有内容重定向到文件描述符3来关闭文件描述符0.为此我们用了语法Exec 3<&0
第二将输入文件放送到文件描述符0,即标准输入
function while_read_line_fd(){
exec 3<&0
exec 0<$FILENAME
While read LINE
Do
echo $LINE
done
exec 0<&<3
}

4、for循环

function  for_in_file(){
for i in `cat $FILENAME`
do
echo $i
done
}