優先順序 | 運算子 | 說 明 |
---|---|---|
13 | -,+ | 單目負、單目正 |
12 | !,~ | 邏輯非、按位元取反或二補數 |
11 | *, /, % | 乘、除、取模 |
10 | +, - | 加、減 |
9 | <<, >> | 按位元左移、按位元右移 |
8 | <=, >=, <, > | 小於或等於、大於或等於、小於、大於 |
7 | == ,!= | 等於、不等於 |
6 | & | 按位元與 |
S | ^ | 按位元互斥或 |
4 | | | 按位元或 |
3 | && | 邏輯與 |
2 | II | 邏輯或 |
1 | =,+=,•=,*=,/=,%=,&=, |=, <<=, >>= | 賦值、運算且賦值 |
[[email protected] ~]# aa=$(( (11+3)*3/2))
#雖然乘和除的優先順序高於加,但是通過小括號可以調整運算優先順序
[[email protected] ~]# echo $aa
21
[[email protected] ~]# bb=$(( 14%3))
[[email protected] ~]# echo $bb 2
#14不能被3整除,餘數是2
[[email protected] ~]# cc=$(( 1 && 0))
[[email protected] ~]# echo $cc
0
#邏輯與運算只有相與的兩邊都是1,與的結果才是1;否則與的結果是0