方法有很多,下面写出三种方法:
写法一:
写法二:
写法三:
说明:
for逐行读和while逐行读是有区别的,如:
写法一:
复制代码代码如下:
#!/bin/bash
while read line
do
echo $line
done < filename(待读取的文件)
while read line
do
echo $line
done < filename(待读取的文件)
写法二:
复制代码代码如下:
#!/bin/bash
cat filename(待读取的文件) | while read line
do
echo $line
done
cat filename(待读取的文件) | while read line
do
echo $line
done
写法三:
复制代码代码如下:
for line in `cat filename(待读取的文件)`
do
echo $line
done
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
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