我有一个Bash脚本,它只能通过管道调用。我很好奇从管道中读取数据的最佳方法是什么?该命令将如下所示:
$ output_gen | process
我的脚本是流程。这不是家庭作业,但它是一种学习练习。
答案 0 :(得分:1)
当您的程序从管道接收数据时,它是通过stdin接收的。要从stdin读取,请使用read
内置函数。这是一个例子:
MYPROG:
while read -r line; do
<something with "$line">
done
命令:
printf 'foo\nbar\n' | ./myprog