關於文件屬性的判斷式 node
-a 若是文件存在 進程
-b 若是文件存在,且該文件是區域設備文件 字符串
-c 當file存在而且是字符設備文件時返回真 file
-d 當pathname存在而且是一個目錄時返回真 終端
-e 當pathname指定的文件或目錄存在時返回真 引用
-f 當file存在而且是普通文件時返回真 文件
-g 當由pathname指定的文件或目錄存在而且設置了SGID位時返回爲真 co
-h 當file存在而且是符號連接文件時返回真,該選項在一些老系統上無效 字符
-k 當由pathname指定的文件或目錄存在而且設置了「sticky」位時返回真 background
-r 當由pathname指定的文件或目錄存在而且可讀時返回爲真
-s 當file存在文件大小大於0時返回真
-t 文件描述符 若是文件描述符是開啓的,且連接了某一個終端
-u 當由pathname指定的文件或目錄存在而且設置了SUID位時返回真
-w 當由pathname指定的文件或目錄存在而且可執行時返回真。一個目錄爲了它的內容被訪問必然是可執行的。
-x 若是文件存在,且該文件有可執行的屬性
-O 當由pathname指定的文件或目錄存在而且被子當前進程的有效用戶ID所指定的用戶擁有時返回真。
-G 若是文件存在,且該文件爲有效的羣組 id 所擁有
-L 若是該文件存在,且該文件是符號連接文件
-S 若是該文件存在,且該文件是Socket文件
-N 若是該文件存在,且該文件自上次讀取後曾修改過
文件1 –nt 文件2 若是文件1比文件2新,或者文件1存在,文件2不存在
文件1 –ot 文件2 若是文件1比文件2舊,或者文件1不存在,文件2存在
文件1 –ef 文件2 若是文件1和文件2 引用到相同的設備和 inode 編號
關於字符串的條件判斷式
-z 空串 (若是字符串長度爲0)
-n 非空串 (若是字符串長度不爲0)
字符串 若是字符串長度不爲0
!= 若是兩個字符串不相等
= 若是兩個字符串相等
== 若是兩個字符串相等
字符串 1 < 字符串 2 若是字符串1小於字符串2
字符串 1 > 字符串 2 若是字符串1大於字符串2
關於算式的條件判斷
-eq 等於
-ne 不等於
-gt 大於
-lt 小於
-le 小於等於
-ge 大於等於
關於 Bash 選項的條件判斷
-o set的選項名稱 若是選項是開啓的狀態