,我有以下问题bash脚本:减法在bash不起作用
validParameters=0
argumentLength=${#1}
argumentLength==$((argumentLength - 1))
#[code to increment validParameters]
if [[ $validParameters != argumentLength ]]
then
diff=$((argumentLength - validParameters))
printf "Attention:\n$diff invalid argument(s) found!\n"
fi
exit 1
在该行发生错误:diff=$((argumentLength - validParameters))
=3: syntax error: operand expected (error token is "=3")
用命令script.sh abc
如果我将diff设置为固定值(例如diff=1
)而不是减法,则该脚本完美地工作。
我的减法语法有点不对吗?
您发布的脚本不会产生该错误。 –
我第二次TomFenech,不可能重现你的错误,有一些重要的东西你不显示。你使用'[['很奇怪。改用'[[validParameters -ne argumentLength]]'。 –
您在'[[$ validParameters!= argumentLength]]中缺少美元符号''。 –