linux if 命令判斷條件總結

關於文件屬性的判斷式 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的選項名稱         若是選項是開啓的狀態

相關文章
相關標籤/搜索