Linux中有四种算术运算,分别是expr,let,$[],$(())。

下面分别介绍一下这四种算术运算的使用方法


一、expr的用法

[root@ssspure~]#expr1+23[root@ssspure~]#expr1-2-1[root@ssspure~]#expr8+614[root@ssspure~]#expr8-62[root@ssspure~]#expr8\*648[root@ssspure~]#expr8/61[root@ssspure~]#a=3[root@ssspure~]#b=4[root@ssspure~]#expr$a+$b7

以上分别是expr做加减乘除运算的例子。

在使用expr做运算的时候,如果想要将运算结果赋值给另一个变量,就要像如下的操作那样。

[root@ssspure~]#a=`expr2+3`[root@ssspure~]#echo$a5

下面说一下使用expr要注意的地方。

1、使用expr做运算的时候,算术和运算符之间要用空格分隔开,否则将不会进行运算

[root@ssspure~]#expr1+21+2

2、在进行乘法运算的时候,*前面要接\转义,因为*在正则表达式里面代表匹配多个的意思

[root@ssspure~]#expr2*3expr:syntaxerror


二、let命令

[root@ssspure~]#leta=2+3[root@ssspure~]#echo$a5[root@ssspure~]#leta=2-3[root@ssspure~]#echo$a-1[root@ssspure~]#leta=2*3[root@ssspure~]#echo$a6[root@ssspure~]#leta=2/3[root@ssspure~]#echo$a0[root@ssspure~]#b=4[root@ssspure~]#c=2[root@ssspure~]#leta=$b/$c[root@ssspure~]#echo$a2

在使用let的时候,一般都需要将他们赋给一个变量来接受运算的结果。

let跟expr不一样,不需要再算数和运算符之间加空格。


三、$[]的使用

[root@ssspure~]#a=$[2+3][root@ssspure~]#echo$a5[root@ssspure~]#a=$[2-3][root@ssspure~]#echo$a-1[root@ssspure~]#a=$[2*3][root@ssspure~]#echo$a6[root@ssspure~]#a=$[2/3][root@ssspure~]#echo$a0


四、$(())的使用

[root@ssspure~]#a=$((1+3))[root@ssspure~]#echo$a4[root@ssspure~]#a=$((1-3))[root@ssspure~]#echo$a-2[root@ssspure~]#a=$((1*3))[root@ssspure~]#echo$a3[root@ssspure~]#a=$((1/3))[root@ssspure~]#echo$a0