13.4.4 算术扩展
算术扩展是Shell提供的整数变量的运算机制,是Shell的内建命令之一。其基本语法如下:
$((
算术表达式))
其中的算术表达式由变量和运算符组成,常见的用法是显示输出和变量赋值。若表达式中的变量没有定义,则在计算时,其值会被假设为0(但是并不会真的因此赋0值给该变量)。
#
显示输出:
echo $((
算术表达式))
#
例子:计算2*i+1
的值
[root@localhost ~]# i=2
[root@localhost ~]# echo $((2*i+1)) #
注意这里变量i
前并没有$
符
5
[root@localhost ~]# echo $((2*(i+1))) #
用括号改变运算优先级
6
#
变量赋值
var=$((
算术表达式))
#
例子:将2*i+1
的值赋值给变量var
[root@localhost ~]# var=$((2*i+1))
[root@localhost ~]# echo $var
5
#
未定义的变量参与算术表达式求值
[root@localhost ~]# echo $((2*(j+1)))
2