您的位置:首页 > 运维架构 > Shell

shell 浮点数的比较

2012-09-28 09:24 148 查看
1、假设profit_loss为浮点数(当然,这里为整数也没问题的)

if [ $(echo "${profit_loss} < 0" | bc) = 1 ];then

profit_flag="亏损"

elif [ $(echo "${profit_loss} < 20" | bc) = 1 ];then
profit_flag="盈利"

else
profit_flag="大赚"
fi

2、如果earnings_rate2可能为负数时,如果不加括号括起来,则会报(standard_in) 1: parse error

earnings_rate_range=$(echo "scale=4;${earnings_rate1}-(${earnings_rate2})" | bc -l)

这里如果整数部分小于1,则可能打印.312这样的结果,如果想打印完整结果,用下面的语句

earnings_rate_range=`echo "$var1 $var2" | awk '{print $1+($2)}'`

3、浮点数比较大小

target_price=10.85

s_dq_close1=9.5

if [ $(echo "$target_price < $s_dq_close1"|bc) -eq 1 ];then

    str_up="目标价小于开始价"

else

    str_up="目标价大于等于开始价"

fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell