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

前端之家收集整理的这篇文章主要介绍了linux – Bash:’$(())’表示’expr’而'[]’表示’test’?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我最近一直在使用一些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

原文链接:https://www.f2er.com/linux/440512.html

猜你在找的Linux相关文章