Shell常用运算符

Shell 中常用的运算符如下表所示:

表 1 Shell 中常用的运算符
优先级 运算符 说 明
13 -,+ 单目负、单目正
12 !,~ 逻辑非、按位取反或补码
11 *, /, % 乘、除、取模
10 +, - 加、减
9 <<, >> 按位左移、按位右移
8 <=, >=, <, > 小于或等于、大于或等于、小于、大于
7 == ,!= 等于、不等于
6 & 按位与
S ^ 按位异或
4 | 按位或
3 && 逻辑与
2 II 逻辑或
1 =,+=,•=,*=,/=,%=,&=, |=, <<=, >>= 赋值、运算且赋值


运算符优先级表明在每个表达式或子表达式中哪个运算对象首先被求值,数值越大优先级越高,具有较高优先级的运算符先于具有较低优先级的运算符进行求值运算。

【例 1】加减乘除

[root@localhost ~]# aa=$(( (11+3)*3/2))
#虽然乘和除的优先级高于加,但是通过小括号可以调整运算优先级
[root@localhost ~]# echo $aa
21


【例 2】取模运算

[root@localhost ~]# bb=$(( 14%3))
[root@localhost ~]# echo $bb 2
#14不能被3整除,余数是2


【例 3】逻辑与

[root@localhost ~]# cc=$(( 1 && 0))
[root@localhost ~]# echo $cc
0
#逻辑与运算只有相与的两边都是1,与的结果才是1;否则与的结果是0

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注