【Linux入門】Shell基本運算子的分類有哪些?

老男孩IT教育機構發表於2021-12-14

  shell是運維人員必須掌握的技能,在運維工作中有著非常重要的地位,那麼Shell基本運算子的分類有哪些?具體內容請看下文:

  shell和其他程式語言一樣,支援多種運算子,包括:算數運算子、關係運算子、布林運算子、字串運算子、檔案測試運算子。

  算數運算子

  +:加法

  -:減法

  *:乘法

  /:除法

  %:取餘

  =:賦值

  ==:相等,用於比較兩個數字,相同則返回true

  !=:不相等,用於比較兩個數字,不相同則返回true

  關係運算子

  關係運算子只支援數字,不支援字串,除非字串的值是數字。常用的關係運算子如下:

  -eq:檢測兩個數是否相等,相等返回true

  -ne:檢測兩個數是否不相等,不相等返回true

  -gt:檢測左邊的數是否大於右邊的,如果是,則返回true

  -lt:檢測左邊的數是否小於右邊的,如果是,則返回true

  -ge:檢測左邊的數是否大於等於右邊的,如果是,則返回true

  -le:檢測左邊的數是否小於等於右邊的,如果是,則返回true

  布林運算子

  !:非運算,表示式為true則返回false,否則返回true

  -o:或運算,有一個表示式為true則返回true

  -a:與運算,兩個表示式都為true才返回true。

  字串運算子

  =:檢測兩個字串是否相等,相等返回true

  !=:檢測兩個字串是否不相等,不相等返回true

  -z:檢測字串長度是否為0,為0返回true

  -n:檢測字串長度是否不為0,不為0返回true

  $:檢測字串是否為空,不為空返回true

  檔案測試運算子

  檔案測試運算子用於檢測Unix檔案的各種屬性,屬性檢測描述如下:

  -b file:檢測檔案是否是塊裝置檔案,如果是,則返回true

  -c file:檢測檔案是否是字元裝置檔案,如果是,則返回true

  -d file:檢測檔案是否是目錄,如果是,則返回true

  -f file:檢測檔案是否是普通檔案(既不是目錄,也不是裝置檔案),如果是,則返回true

  -g file:檢測檔案是否設定了SGID位,如果是,則返回true

  -k file:檢測檔案是否設定了粘著位(Sticky Bit),如果是,則返回true

  -p file:檢測檔案是否是有名管道,如果是,則返回true

  -u file:檢測檔案是否設定了SUID位,如果是,則返回true

  -r file:檢測檔案是否可讀,如果是,則返回true

  -w file:檢測檔案是否可寫,如果是,則返回true

  -x file:檢測檔案是否可執行,如果是,則返回true

  -s file:檢測檔案是否為空(檔案大小是否大於0),不為空返回true

  -e file:檢測檔案(包括目錄)是否存在,如果是,則返回true

  其他檢查符:

  -S: 判斷某檔案是否socket。

  -L: 檢測檔案是否存在並且是一個符號連結。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2847662/,如需轉載,請註明出處,否則將追究法律責任。

相關文章