shell 浮点数的比较

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)