我试图在两个子AND条件之间执行OR运算,如下所示。
elif [[ $RBIT >= 7000.00 && $RBIT <= 15000.00 ]] || [[ $TBIT >= 7000.00 && $TBIT <= 15000.00 ]]; then
echo #statements;
exit 0;
fi
但是错误地得到它。
/script: line 20: syntax error in conditional expression
/script: line 20: syntax error near `7000.00'
/script: line 20: `elif [[ $RBIT >= 7000.00 && $RBIT <= 15000.00 ]] || [[ $TBIT >= 7000.00 && $TBIT <= 15000.00 ]]; then'
当然,变量RBIT和TBIT具有2个小数点的浮点值。
如果我在这里引起语法错误或'if condition'不能像那样工作,我很困惑。请帮助。
Bash仅支持整数数学。所以,你可以改写你的条件:
elif ((RBIT >= 7000 && RBIT <= 15000)) || ((TBIT >= 7000 && TBIT <= 15000)); then
在处理整数时,((...))
是一个更好的构造。 $
是((...))
表达式内可变扩展的可选项。
您可能希望看到此相关帖子: