我最近一直在使用一些 bash 脚本,并且一直在查看手册页。从我收集的内容来看,是什么$(( ))意思?expr[ ]test
对于$(( )):
echo $(( 5 + 3 ))
具有与以下相同的输出:
echo $(expr 5 + 3)
对于[ ]:
test 'str' = 'str'
具有与以下相同的成功值:
[ 'str' = 'str' ]
我的理解正确吗?
该((...))构造等效于 bash 内置let。let做大部分相同的事情expr。
$((...))构造,请注意$开头的 ,将替换内部表达式的输出,就像做的$(...)那样。
该[...]构造实际上只是test.
有关更多信息,请参阅 bash 帮助页面。
help "("help lethelp [help test也可以看看:
你是正确[ ]的test
关于$(( )),这是一个更精细的替换expr。您可以计算比 with 更复杂的表达式expr。