评估来自stdout的行

时间:2011-04-25 21:15:27

标签: bash scripting

我有一个在循环中执行程序的bash脚本。我想评估stdout中的每一行,如果符合我的条件,我会做一些事情。

我仍然希望能够在屏幕上看到stdout。有没有一种简单的方法来实现这一目标?谢谢!

2 个答案:

答案 0 :(得分:13)

循环输入有几种变体,但有一种可能性:

my_cmd | while read line; do
    echo "$line"
    my_process "$line"
done

答案 1 :(得分:-1)

这应该做你想要的:

for string in "a" "b" "c"
do
    output=`echo ${string}`
    echo ${output}
    if [ ${output} == "b" ] ; then
        echo "do something"
    fi
done

只需用您的程序替换第一个回声。