shell 脚本中的算术表达式错误

Arithmetic expression error in shell scripting

首先,我将以字节为单位获取昨天和今天文件大小的值(a=昨天和 b=今天)

我需要计算百分比并确定差异是大于还是小于 10%

a=21007558 -- Yesterday
b=19330    -- Today 

c=`expr ((($b/$a) "*" 100) "-" 100) | bc` 

这不起作用

您可以使用如下缩放选项;

c=$(echo "scale=6;((($b/$a) * 100) -100)" | bc)
echo $c

小于或大于 %10;您可以尝试以下方法;

let c=$(echo $(printf %.f $(echo "scale=6;((($b/$a) * 100) -100)" | bc)))
if [[ c -lt -10  ]]; then
echo "decrease rate is %"$c    
fi
if [[ c -gt 10  ]]; then
echo "increase rate is %"$c    
fi