加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – Bash:’$(())’表示’expr’而'[]’表示’test

发布时间:2020-12-13 19:10:18 所属栏目:Linux 来源:网络整理
导读:我最近一直在使用一些bash脚本,并一直在查看手册页.根据我的收集,$(())是指expr和[]意味着测试? 对于$(()): echo $(( 5 + 3 )) 具有相同的输出: echo $(expr 5 + 3) 对于[]: test 'str' = 'str' 具有与以下相同的成功价值: [ 'str' = 'str' ] 我理解得

我最近一直在使用一些bash脚本,并一直在查看手册页.根据我的收集,$(())是指expr和[]意味着测试?

对于$(()):

echo $(( 5 + 3 ))

具有相同的输出:

echo $(expr 5 + 3)

对于[]:

test 'str' = 'str'

具有与以下相同的成功价值:

[ 'str' = 'str' ]

我理解得对吗?

最佳答案
((…))构造等同于bash builtin let.让大多数与expr相同的东西.

$((…))构造,注意开头的$,将像$(…)那样替换表达式的输出.

[…]构造实际上只是测试的另一个名称.

有关更多信息,请参阅bash帮助页面.

>帮助“(”
>帮助让
>帮助[
>帮助测试

也可以看看:

> http://mywiki.wooledge.org/BashFAQ/031
> http://mywiki.wooledge.org/ArithmeticExpression

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读