使用Mac终端和Shell脚本
尝试做添加和赋值运算符的快捷方式
SumVar=1
$(( SumVar += 5 ))
echo $SumVar
得到错误:
错误:第3行:5:找不到命令
这个的正确语法是什么?
递增变量的语法是正确的,但是您在Bash想要命令的上下文中使用它,并且它抱怨增量的结果(4
)不是可识别的命令。
let
关键字是你的朋友。
let SumVar+=4
或者更好但只是遗漏美元符号(感谢@chepner);
(( SumVar += 4 ))
当你使用这样的替换时,bash
将尝试执行替换名称/值的命令。您可以使用此代替:
(( Sumvar += 5 ))
或者如果你真的坚持在这里使用替换,你可以使用它作为:
命令的参数:
: $(( Sumvar += 5 ))