linux – 在不使用“bc”的情况下计算Shell脚本中的舍入百分比

我正在尝试计算Shell脚本中某些项目的百分比.我想把这个值四舍五入,也就是说,如果结果是59.5,我应该期望60而不是59.

item=30
total=70
percent=$((100*$item/$total))

echo $percent

这给了42.

但实际上,结果是42.8,我想把它四舍五入到43.
“bc”可以解决问题,有没有办法不使用“bc”?

我无权安装任何新软件包.我的系统中没有“dc”和“bc”.
它应该是纯粹的Shell,也不能使用perl或python脚本

解决方法:

使用AWK(没有bash-isms):

item=30
total=70
percent=$(awk "BEGIN { pc=100*${item}/${total}; i=int(pc); print (pc-i<0.5)?i:i+1 }")

echo $percent
43
上一篇:按百分比设置排名-Android DisplayMetrics


下一篇:Linux console/tty/gui终端模拟器