我遇到了 bc 在 AIX 系统中没有布尔表达式的问题。想知道是否有替换命令所以我不再制作我的代码?这是在 bash 脚本中。
这是我所拥有的:
percent=-0.17
max=0.20
if [[ $(bc <<< "$percent <= $max && $percent >= -$max") -ge 1 ]]; then
echo "Under the $max acceptable buffer: File ACCEPTED"
else
echo "Over the $max acceptable buffer: File REJECTED"
exit 1
fi
这是我的输出:
++ bc
syntax error on line 1 stdin
+ [[ '' -ge 1 ]]
bc
的 POSIX 规范不需要简单的条件,而 AIXbc
也不支持它们。你必须像这样打破测试:重新格式化
bc
脚本,它看起来像这样:... 只有当 $percent 值在两个范围内时,表达式才会
1
被执行,并打印1
到标准输出。