Bash案例按数字顺序排列

时间:2010-11-12 21:30:22

标签: bash sequence case

num=0.5

avg=`seq 0.47 0.01 0.79`

case $num in
"$avg" )
echo "ok"
;;
1 )
echo "no"
;;
esac

如果你理解,我试图这样做。 所以,我给它一个数字,如果数字匹配序列就没问题。 但这不起作用。还有另一种方法吗?

1 个答案:

答案 0 :(得分:1)

num=0.5
result="not ok"
for vers in $(seq 0.47 0.01 0.79)
do
    if [ "$vers" = "$num" ] ; then
        result=ok
        break      # thanks @GreenMatt
    fi
done
echo $result