小数除法
shell计算中使用除法,基本默认上都是整除。
使用bc工具,scale控制小数点后保留几位:
a=4
b=5
#结果小于1.0时前面个位数补0。scale=2表示保留两位小数(只在除法中有用)
c=`echo "scale=2;val=$a/$b;if( length(val) == scale(val) ) print 0;print val " | bc`
或者
c=`printf "%.2f" $( echo "scale=2; $a/$b" | bc )`