關係運算子只支援數字,不支援字串,除非字串的值是數字。
下表列出了常用的關係運算子,假定變數 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。
關係運算子例項如下:
#!/bin/bash# author:菜鳥教程# url:www.runoob.coma=10b=20if[$a -eq $b ]thenecho "$a -eq $b : a 等於 b"elseecho "$a -eq $b: a 不等於 b"fiif[$a -ne $b ]thenecho "$a -ne $b: a 不等於 b"elseecho "$a -ne $b : a 等於 b"fiif[$a -gt $b ]thenecho "$a -gt $b: a 大於 b"elseecho "$a -gt $b: a 不大於 b"fiif[$a -lt $b ]thenecho "$a -lt $b: a 小於 b"elseecho "$a -lt $b: a 不小於 b"fiif[$a -ge $b ]thenecho "$a -ge $b: a 大於或等於 b"elseecho "$a -ge $b: a 小於 b"fiif[$a -le $b ]thenecho "$a -le $b: a 小於或等於 b"elseecho "$a -le $b: a 大於 b"fi執行指令碼,輸出結果如下所示:
10-eq 20:a 不等於b10-ne 20:a 不等於b
10-gt 20:a 不大於b
10-lt 20:a 小於b
10-ge 20:a 小於b
10-le 20:a 小於或等於b
Shell關係運算子
shell關係運算子只支援數值或數值型字串。運算子說明 檢測兩邊的值是否相等,若相等則返回true 檢測兩邊的值是否不相等,若不相等則返回true 檢測左邊的值是否大於右邊的值,若大於則返回true 檢測左邊的值是否小於右邊的值,若小於則返回true eq與 運算子作用相同 ne與 運算子作用相同 ...
shell 中關係運算子
關係運算子只支援數字,不支援字串,除非字串的值是數字。運算子說明 舉例 eq 檢測兩個數是否相等,相等返回 true。a eq b 返回 false。ne檢測兩個數是否不相等,不相等返回 true。a ne b 返回 true。gt檢測左邊的數是否大於右邊的,如果是,則返回 true。a gt b ...
Shell筆記(運算子 關係運算子 布林運算子)
運算 語法 運 算式 表示式 表示式 表示式 expr a b 加 expr a b 減 expr a b 乘 expr a b 除 expr a b 求餘 a b 將b的值賦給a a b 判斷a是否等於b,返回結果為布林值 a b 判斷a是否不等於b,返回結果為布林值 注意 shell的字元型數值...