shell 运算符
字符串運算符
| ?運算符??????? | 說明 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | 舉例????????????? |
| $ | 檢測字符串是否為空,不為空返回true | [ $a ] |
| ?-z | 檢測字符串長度是否為0,為0返回 true | [ -z $a ] |
| ?-n | 檢測字符串長度是否為0,不為0 返回 true | [ -n $a ] |
?
?
?
?
字符串關系運算符
| ?運算符??????? | 說明 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | 舉例????????????? |
| ?= 或 == | 檢測兩個字符串是否相等,相等返回 true | [ $a = $b ] |
| ?!= | 檢測兩個字符串是否相等,不相等返回true | [ $a != $b ] |
?
?
?
?
需要注意的一點是
#! /bin/basha= # a=" " 時現象一致# 判斷是否為空 if [ $a ] thenecho "a is not null" elseecho "a is null" fi# 判斷字符串長度是否為 0 if [ -z $a ] thenecho "a is zero" fiif [ -n $a ] thenecho "a is not zero" fi執行
$ ./demo.sh a is null a is zero a is not zero也就是說,只有當 字符串不為空的時候,判斷字符串長度才有意義。
算數運算符
假定 a 為 20, b 為 10
| ?運算符??????? | 說明 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | 舉例??????????????????????????? |
| ?+ | ?加法 | `expr $a + $b` 或 $(($a+$b)) 或 $[$a+$b] |
| ?- | ?減法 | `expr $a - $b` 或? $(($a-$b)) 或? $[$a-$b] |
| ?* | ?乘法 | `expr $a \* $b` 或 $(($a*$b)) 或 $[$a*$b] |
| ?/ | ?除法 | `expr $b / $a` 或 $(($b/$a)) 或 $[$b/$a] |
| ?% | ?取余 | `expr $b % $a` 或 $(($b%$a)) 或 $[$b%$a] |
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
數字關系運算符
假定 a 為 10, b 為 20
| ?運算符??????? | 說明 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | 舉例????????????? |
| ?-eq | 檢測兩個數是否相等,相等返回 true。 | [ $a -eq $b ] 返回?false |
| ?-ne | 檢測兩個數是否不相等,不相等返回 true。 | [ $a -ne $b ] 返回 true |
| ?-gt | 檢測左邊的數是否大于右邊的,如果是,則返回 true。 | [ $a -gt $b ] 返回 false |
| ?-lt | 檢測左邊的數是否小于右邊的,如果是,則返回 true。 | [ $a -lt $b ] 返回 true |
| ?-ge | 檢測左邊的數是否大于等于右邊的,如果是,則返回 true。 | [ $a -ge $b ] 返回 false |
| ?-le | 檢測左邊的數是否小于等于右邊的,如果是,則返回 true。 | [ $a -le $b ] 返回 true |
?
?
?
?
?
?
?
?
邏輯運算符
| ?運算符??????? | 說明 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? | 舉例????????????? |
| ?! | 檢測兩個字符串是否相等,相等返回 true | ? |
| ?&& 或 -a | 檢測兩個字符串是否相等,不相等返回true | ? |
| ?|| 或 -o | 檢測字符串長度是否為0,為0返回 true | ? |
轉載于:https://www.cnblogs.com/rivsidn/p/11030198.html
總結
- 上一篇: 北风设计模式课程---深入理解[代理模式
- 下一篇: pandas 常用操作