shell编程之算术运算符

Posted 永远不要矫情

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell编程之算术运算符相关的知识,希望对你有一定的参考价值。

算术运算符指的是加,减,乘,除,余等常见算术运算,以及加等,减等,乘等复合算术运算。需要注意的是shell只支持整数计算,所有产生小数的运算都会直接舍去小数部分,向下取整。

1.算术运算使用的命令为let,在除法和取余运算中,除法不能为0,否则报错。
常规算术运算符如下:

运算符运算符例子运算结果
+(加运算符)1+12
-(减运算符)2-11
*(乘运算符)2*48
/(除运算符)3/21
%(余运算符)9%41
**(幂运算符)3**29
[root@node1 ~]# let "value=20/3"
[root@node1 ~]# echo $value
6
[root@node1 ~]# let "value=20/0"
-bash: let: value=20/0: division by 0 (error token is "0")[root@node1 ~]# let "value=3**2"
[root@node1 ~]# echo $value
9

复合运算符如下:

运算符运算符例子运算结果
+=(加等运算符)x=8,x+=210
-=(减等运算符)x=8,x-=26
*=(乘等运算符)x=8,x*=216
/=(除等运算符)x=8,x/=32
%=(余等运算符)x=8,x%=32
[root@node1 ~]# x=6
[root@node1 ~]# let x+=6
[root@node1 ~]# echo $x
12

2.$[]命令也可做简单的算术运算,例如:

[root@node1 ~]# echo $[1+1]
2
[root@node1 ~]# echo $[6-2]
4
[root@node1 ~]# echo $[6*2]
12

3.expr命令
expr命令也可做算术运算,但要求操作符和操作数之间使用空格隔开,否则只会打印字符串,所以使用特殊的操作符要使用转义字符。例如:

[root@node1 ~]# expr 1+1
1+1
[root@node1  ~]# expr 1 + 1
2
[root@node1  ~]# expr 2 * 2
expr: syntax error
[root@node1  ~]# expr 2 \\* 2
4

以上是关于shell编程之算术运算符的主要内容,如果未能解决你的问题,请参考以下文章

shell编程算术运算

第五课-第四讲05_04_bash脚本编程之三 条件判断及算术运算

Shell编程入门

shell编程之shell 运算

Shell脚本编程算术运算和条件测试

linux之Shell编程--Shell基本运算符之字符串运算符和文件运算符实例演示