和 (())、let 命令类似,$[] 也只能进行整数运算。
Shell $[] 的用法如下:
$[表达式]
$[]
会对表达式进行计算,并取得计算结果。如果表达式中包含了变量,那么你可以加$,也可以不加。
Shell $[] 举例:
[linuxyz.cn]$ echo $[3*5] #直接输出结算结果
15
[linuxyz.cn]$ echo $[(3+4)*5] #使用()
35
[linuxyz.cn]$ n=6
[linuxyz.cn]$ m=$[n*2] #将计算结果赋值给变量
[linuxyz.cn]$ echo $[m+n]
18
[linuxyz.cn]$ echo $[$m*$n] #在变量前边加$也是可以的
72
[linuxyz.cn]$ echo $[4*(m+n)]
72
需要注意的是,不能单独使用 $[]
,必须能够接收 $[]
的计算结果。例如,下面的用法是错误的:
[linuxyz.cn]$ $[3+4]
bash: 7: 未找到命令...
[linuxyz.cn]$ $[m+3]
bash: 15: 未找到命令...