Linux 一些表示式和運算子
阿新 • • 發佈:2018-11-04
條件表示式
表示式 | 示例 |
---|---|
[ expression ] | [ 5 -eq 5 ] |
[[ expression ]] | [[ 5 -eq 5 ]] |
test expression | test 1 -eq 1 |
以下符號用於整數比較測試:
比較符 | 含義 |
---|---|
-eq | 等於 |
-ne | 不等於 |
-gt | 大於 |
-lt | 小於 |
-ge | 大於或等於 |
-le | 小於或等於 |
以下符號用於字串比較
符號 | 描述 |
---|---|
== | 等於 |
!= | 不等於 |
> | 根據ASCII碼錶判斷大小,大於 |
< | 根據ASCII碼錶判斷大小,小於 |
>= | 大於等於 |
<= | 小於等於 |
-n | 字串長度不等於0則為真 |
-z | 字串長度等於0則為真 |
str | 字串存在則為真 |
注意:
使用-z或者-n判斷字串長度時,變數要加雙引號
如果使用雙中括號就不用雙引號了
檔案測試:
測試符 | 含義 |
---|---|
-e | 檔案或目錄存在為真 |
-f | 檔案存在為真 |
-d | 目錄存在為真 |
-r | 有讀許可權為真 |
-w | 有寫許可權為真 |
-x | 有執行許可權為真 |
-s | 檔案存在並且大小大於0為真 |
為 True |
布林運算子:
運算子 | 含義 |
---|---|
! | 非關係,將結果取反 |
-a | AND, 且關係,在[ ]表示式中使用 |
-o | OR, 或關係,在[ ]表示式中使用 |
邏輯表示式:
邏輯表示式有:&&(邏輯與)、||(邏輯或)、兩者再[[ ]]和(())表示式中使用:
[[ 1 -eq 1 && 2 > 1 ]]結果為True
(( 1 == 1 && 2 > 1 ))結果為True
整數運算子:
運算子 | 描述 |
---|---|
+ | 加法 |
- | 減法 |
* | 乘法 |
/ | 除法 |
% | 取餘 |
運算表示式:
運算表示式 | 示例 |
---|---|
$(()) | $((5+5)) |
$[] | $[5+5] |
注意:
$(())表示式還可以做三目運算:
echo $((100>99?1:2)) 如果100大於99 就返回1否則返回2
返回值不支援字串。