哪个是编写从文件读取的循环的最佳方法?

bor*_*ork 5 bash

我正在学习bash并试图理解这两种从文件中读取行的方法之间的区别.

1.

while IFS= read -r line
do
  echo $line
done < "$file"
Run Code Online (Sandbox Code Playgroud)

2.

cat $file |
while read data
do
   echo $i
done
Run Code Online (Sandbox Code Playgroud)

所以基本上我想知道的是:它们中的任何一种比其他更常见吗?是否存在性能差异?等等

此外,还有其他方法从文件中读取甚至更好,特别是从大文件读取时?

Joh*_*nck 5

第二个是无用的猫:http://porkmail.org/era/unix/award.html

我用的是done < "$file"表格.

不,在Bash中没有更好的方法.但是消除一个进程(cat)是很好的.