我有一个场景,我正在取两个数字的差值。
然后需要在一个范围内检查计算出的差异。
如果它在该范围内,则显示状态为成功,否则显示失败。
下面是我的代码
Range = -1 to 1
var1=12.23
var2=13.23
diff=$(echo "($var1-$var2)"| bc -l)
echo $diff
if [ "$diff" -ge -1 ] && [ "$diff" -le 1 ]; then
echo "$diff" "success"
else
echo "Not within range -1 to 1"
echo "Failure"
fi
错误如下
script.sh: 8: [: Illegal number: -1.00
shell 无法比较在算术上下文中表示浮点值的字符串。但是,您可以使用来评估可以在 shell中使用
bc
的布尔(整数)值:如果你想玩,
awk
你可以使用如下脚本: