我的bash脚本中有以下代码:
if [[ "$USE_NEW" == "true" ]]; then
echo "Forcing usage of NEW build script"
./android/build/build.new.sh $@
elif [[ $MAJOR > 4 || ($MAJOR = 4 && $MINOR >= 2) ]]; then
echo "Version greater than or equal to 4.2.x.x, running NEW build script"
./android/build/build.new.sh $@
else
echo "Version less than 4.2.x.x, running LEGACY build script"
#./android/build/build.legacy.sh $@
fi
我得到一个错误:
line 149: expected `)'
这里的第149行恰好是上面示例中包含第一个
elif
的行。我对bash脚本不太了解,也无法通过Google找到任何帮助我发现自己做错了什么的东西。有人能帮我修改一下bash脚本吗? 最佳答案
将第二个条件更改为:
[[ "$MAJOR" -gt 4 || ( "$MAJOR" -eq 4 && "$MINOR" -ge 2 ) ]]
编辑:或更好:
(( MAJOR > 4 || ( MAJOR == 4 && MINOR >= 2) ))
关于bash - bash脚本中的“预期括号”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23276707/