在Bash脚本中读取管道

时间:2013-10-06 16:10:31

标签: bash

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

$ output_gen | process

我的脚本是流程。这不是家庭作业,但它是一种学习练习。

1 个答案:

答案 0 :(得分:1)

当您的程序从管道接收数据时,它是通过stdin接收的。要从stdin读取,请使用read内置函数。这是一个例子:

MYPROG:

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

命令:

printf 'foo\nbar\n' | ./myprog