一、算數運算
1. bash中的算術運算:
可用help let查看幫助
常見的算數運算符:
+(加), -(減), *(乘), /(除), %取模(取餘), **(乘方)
實現算術運算:
① let var=算術表達式
注:let運算只保留整數位
② var=$[算術表達式]
其餘算數表達式同理
③ var=$((算術表達式))
其餘算數表達式同理
④ var=$(expr arg1 arg2 arg3 ...)
其餘算數表達式同理
⑤ declare –i var = 數值
其餘算數表達式同理
⑥ echo ‘算術表達式’ | bc
其餘算數表達式同理
2. 乘法符號有些場景中需要轉義,如*
3. bash有內建的隨機數生成器:$RANDOM(0-32767)
例如:取出0-49之間的隨機數
二、賦值運算
1. 增強型賦值:
① +=
② -=
③ *=
④ /=
⑤ %=
2. 自增,自減:
① ++
② --
三、邏輯運算
1. true, false
測試命令:
test EXPRESSION
[ EXPRESSION ]
[[ EXPRESSION ]]
注意:EXPRESSION前後必須有空白字符
返回結果:
1爲true,0爲false
2. 與(&)
1 與 1 = 1
1 與 0 = 0
0 與 1 = 0
0 與 0 = 0
例如:12與24
12轉換成二進制:01100
24轉換成二進制:11000
與的結果是:01000
轉換成十進制是:8
3. 或(|)
1 或 1 = 1
1 或 0 = 1
0 或 1 = 1
0 或 0 = 0
依然是上例,12或24
12轉換成二進制:01100
24轉換成二進制:11000
或的結果是:11100
轉換成十進制是:28
4. 非(!)
! 1 = 0 ! true
! 0 = 1 ! false
5. 短路運算
① 短路與(&&)
第一個爲0,結果必定爲0即:
命令1 && 命令2
命令1爲假,不執行命令2
第一個爲1,第二個必須要參與運算
命令1 && 命令2
命令1爲真,執行命令2
② 短路或(||)
第一個爲1,結果必定爲1
命令1 || 命令2
命令1爲真,不執行命令2
第一個爲0,第二個必須要參與運算
命令1 || 命令2
命令1爲假,執行命令2
6. 異或(^)
異或的兩個值,相同爲假(0),不同爲真(1)
例如:12異或24
12轉換成二進制:01100
24轉換成二進制:11000
12異或的結果:10100
轉換成十進制是:20