分配变量var=foo和使用let 之间的区别是什么let var=foo?或者像var=${var}bar和let var+=bar?每种方法的优点和缺点是什么?
Ale*_*-A. 65
let确实做了什么(( )),它是算术表达式.目前几乎没有差别之间let和(( )).
您的示例无效.var=${var}bar将要词添加bar到var变量(它是一个字符串操作),let var+=bar是不会工作,因为它不是一个算术表达式:
$ var='5'; let var+=bar; echo "$var"
5
Run Code Online (Sandbox Code Playgroud)
实际上,它是一个算术表达式,如果只bar设置了变量,否则bar被视为零.
$ var='5'; bar=2; let var+=bar; echo "$var"
7
Run Code Online (Sandbox Code Playgroud)