系統(tǒng)運(yùn)維
[root@master1-192-168-117-18 ~]# [ -d /etc/dev ] 測(cè)試語(yǔ)句兩邊應(yīng)該有一個(gè)空格
[root@master1-192-168-117-18 ~]# echo $?
1
[root@master1-192-168-117-18 ~]# [ -e /etc/profile ]
[root@master1-192-168-117-18 ~]# echo $?
0
[root@master1-192-168-117-18 ~]# [ -e /etc/profile ] && echo "I love you"
I love you
除了邏輯“與”外,還有邏輯“或”,它在Linux系統(tǒng)中的運(yùn)算符號(hào)為||,表示當(dāng)前面的命令執(zhí)行失敗后才會(huì)執(zhí)行它后面的命令,因此可以用來(lái)結(jié)合系統(tǒng)環(huán)境變量USER來(lái)判斷當(dāng)前登錄的用戶是否為非管理員身份:
[xiha@master1-192-168-117-18 ~]$ [ $USER = root ] || echo No\'s root
No\'s root
第三種邏輯語(yǔ)句是“非”,在Linux系統(tǒng)中的運(yùn)算符號(hào)是一個(gè)嘆號(hào)(?。?,它表示把條件測(cè)試中的判斷結(jié)果取相反值。也就是說(shuō),如果原本測(cè)試的結(jié)果是正確的,則將其變成錯(cuò)誤的;原本測(cè)試錯(cuò)誤的結(jié)果則將其變成正確的
[root@master1-192-168-117-18 ~]# [ $USER != root ] || echo "no\'s root"
no\'s root
先判斷當(dāng)前登錄用戶的USER變量名稱是否等于root,然后用邏輯運(yùn)算符“非”進(jìn)行取反操作,效果就變成了判斷當(dāng)前登錄的用戶是否為非管理員用戶了。最后若條件成立則會(huì)根據(jù)邏輯“與”運(yùn)算符輸出user字樣;或條件不滿足則會(huì)通過(guò)邏輯“或”運(yùn)算符輸出root字樣,而如果前面的&&不成立才會(huì)執(zhí)行后面的||符號(hào)。
[root@master1-192-168-117-18 ~]# [ $USER != root ] && echo "user" || echo "root"
root