从Bash脚本中的管道读取

从Bash脚本中的管道读取,bash,Bash,我有一个Bash脚本,它只能通过管道调用。我很好奇从管道中读取数据的最佳方式是什么?该命令将如下所示: $ output_gen | process 我的脚本是进程。这不是家庭作业,而是一个学习练习。当您的程序从管道接收数据时,它是通过stdin接收的。要从标准输入中读取,请使用readbuiltin。以下是一个例子: myprog: while read -r line; do <something with "$line"> done 你不必做任何特别的事。输入将像

我有一个Bash脚本,它只能通过管道调用。我很好奇从管道中读取数据的最佳方式是什么?该命令将如下所示:

$ output_gen | process

我的脚本是进程。这不是家庭作业,而是一个学习练习。

当您的程序从管道接收数据时,它是通过stdin接收的。要从标准输入中读取,请使用
read
builtin。以下是一个例子:

myprog:

while read -r line; do 
    <something with "$line">
done

你不必做任何特别的事。输入将像往常一样出现在stdin上。
printf 'foo\nbar\n' | ./myprog