在 bash 中逐行处理的最快方法是什么?

Hea*_*ray 3 bash shell-script

可能的重复:
如何遍历文件的行?

假设我cat是一个文件,我想在每一行上运行一个 bash 命令并将每一行写为输出。

如何以最简洁的方式在一行上运行 bash 命令?

cat something | lineBylineInplpace grep -E "spo" > &1
Run Code Online (Sandbox Code Playgroud)

(我忘记了标准描述符符号 = / )

应该将每一行的输出输出到新文件中,并与它用于输入的行保持一致。

我意识到这与 awk 非常相似。有没有内置的 bash 方法可以加快速度?

Gil*_*not 10

逐行处理文件的正确方法是:

   while read -r line; do
       echo "$line"
    done < /path/to/file.txt
Run Code Online (Sandbox Code Playgroud)

http://mywiki.wooledge.org/BashFAQ/001

笔记

  • 使用unix pipes有成本,最好避免使用它以提高速度