比較運算子

2021-07-05 10:18:53 字數 2565 閱讀 3636

運算子描述

示例檔案比較運算子

-e filename

如果 filename

存在,則為真

[ -e /var/log/syslog ]

-d filename

如果 filename

為目錄,則為真

[ -d /tmp/mydir ]

-f filename

如果 filename

為常規檔案,則為真

[ -f /usr/bin/grep ]

-l filename

如果 filename

為符號鏈結,則為真

[ -l /usr/bin/grep ]

-r filename

如果 filename

可讀,則為真

[ -r /var/log/syslog ]

-w filename

如果 filename

可寫,則為真

[ -w /var/mytmp.txt ]

-x filename

如果 filename

可執行,則為真

[ -x /usr/bin/grep ]

filename1

-nt 

filename2

如果 filename1

比 filename2

新,則為真

[ /tmp/install/etc/services -nt /etc/services ]

filename1

-ot 

filename2

如果 filename1

比 filename2

舊,則為真

[ /boot/bzimage -ot arch/i386/boot/bzimage ]

字串比較運算子

(請注意引號的使用,這是防止空格擾亂**的好方法)

-z string

如果 string

長度為零,則為真

[ -z "$myvar" ]

-n string

如果 string

長度非零,則為真

[ -n "$myvar" ]

string1

= string2

如果 string1

與 string2

相同,則為真

[ "$myvar" = "one two three" ]

string1

!= string2

如果 string1

與 string2

不同,則為真

[ "$myvar" != "one two three" ]

算術比較運算子

num1

-eq 

num2

等於[ 3 -eq $mynum ]

num1

-ne 

num2

不等於[ 3 -ne $mynum ]

num1

-lt 

num2

小於[ 3 -lt $mynum ]

num1

-le 

num2

小於或等於

[ 3 -le $mynum ]

num1

-gt 

num2

大於[ 3 -gt $mynum ]

num1

-ge 

num2

大於或等於

[ 3 -ge $mynum ]

測試命令

test命令用於檢查某個條件是否成立,它可以進行數值、字元和檔案3個方面的測試,其測試符和相應的功能分別如下。

(1)數值測試:

-eq 等於則為真。

-ne 不等於則為真。

-gt 大於則為真。

-ge 大於等於則為真。

-lt 小於則為真。

-le 小於等於則為真。

(2)字串測試:

= 等於則為真。

!= 不相等則為真。

-z字串 字串長度為零則為真。

-n字串 字串長度非零則為真。

(3)檔案測試:

-e檔名 如果檔案存在則為真。

-r檔名 如果檔案存在且可讀則為真。

-w檔名 如果檔案存在且可寫則為真。

-x檔名 如果檔案存在且可執行則為真。

-s檔名 如果檔案存在且至少有乙個字元則為真。

-z檔名 檔案存在且長度為0返回真。

-d檔名 如果檔案存在且為目錄則為真。

-f檔名 如果檔案存在且為普通檔案則為真。

-c檔名 如果檔案存在且為字元型特殊檔案則為真。

-b檔名 如果檔案存在且為塊特殊檔案則為真

-o檔名 如果檔案屬於使用者本人返回真。

mysql運算子,比較運算子

我也是菜鳥,也是新手,一起學習,一起進步,加油 首先 比較運算子,進行比較之後的 結果如果為真 返回1,結果為假 返回 0 一下為常用的,最基礎的一些沒有列出來 或 不等於 null 的安全等於 null safe between 存在於指定範圍 in存在於指定集合 is null 為 null i...

python運算子 比較運算子

比較運算子的運算結果會得到乙個bool型別,也就是邏輯判定,要麼是真true,要不就是false 大於 小於 不說了,看看不等於,用 表示。大於等於 和小於等於 也不多說了。result 10 9 print result 比較兩個值是否相等,用 表示。注意它和 is 是有區別的 print 10 ...

8 運算子 比較運算子

a 4 b 7 print a b false print a b true 不等於 print a b true特殊情況,如果是字串的比較,實際上是編碼位置的比較,實際上,計算機中最終執行的都是二進位制,所以計算中本身是沒有任何的中文,或者字母的。所以,我們看到的中文,字母,實際上是別人提前把文字...