linux if 命令判断条件总结
linux if命令
關(guān)于文件屬性的判斷式
-a 如果文件存在
-b 如果文件存在,且該文件是區(qū)域設(shè)備文件
-c 當(dāng)file存在并且是字符設(shè)備文件時返回真
-d 當(dāng)pathname存在并且是一個目錄時返回真
-e 當(dāng)pathname指定的文件或目錄存在時返回真
-f 當(dāng)file存在并且是普通文件時返回真
-g 當(dāng)由pathname指定的文件或目錄存在并且設(shè)置了SGID位時返回為真
-h 當(dāng)file存在并且是符號鏈接文件時返回真,該選項在一些老系統(tǒng)上無效
-k 當(dāng)由pathname指定的文件或目錄存在并且設(shè)置了“sticky”位時返回真
-r 當(dāng)由pathname指定的文件或目錄存在并且可讀時返回為真
-s 當(dāng)file存在文件大小大于0時返回真
-t 文件描述符?? 如果文件描述符是開啟的,且鏈接了某一個終端
-u 當(dāng)由pathname指定的文件或目錄存在并且設(shè)置了SUID位時返回真
-w 當(dāng)由pathname指定的文件或目錄存在并且可執(zhí)行時返回真。一個目錄為了它的內(nèi)容被訪問必然是可執(zhí)行的。
-x? 如果文件存在,且該文件有可執(zhí)行的屬性
-O 當(dāng)由pathname指定的文件或目錄存在并且被子當(dāng)前進(jìn)程的有效用戶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 引用到相同的設(shè)備和 inode 編號
?
關(guān)于字符串的條件判斷式
-z??? ?????????? ??????????????????????????? 空串 (如果字符串長度為0)
-n??? ?????????? ??????????????????????????? 非空串 (如果字符串長度不為0)
字符串??? ?????? ??????????????????????????? 如果字符串長度不為0
!=??? ?????????????????????????????????????? 如果兩個字符串不相等 ??????????????????
=???? ????????????????????????????????????? 如果兩個字符串相等
==??? ????????????????????????????????????? 如果兩個字符串相等
字符串 1 < 字符串????? 2???? ?????? 如果字符串1小于字符串2
字符串 1 > 字符串????? 2???? ?????? 如果字符串1大于字符串2
?
?
?
?
?
?
?
關(guān)于算式的條件判斷
-eq?? 等于
-ne??? 不等于
-gt??? 大于
-lt??? 小于
-le??? 小于等于
-ge?? 大于等于
?
?
關(guān)于 Bash 選項的條件判斷
-o set的選項名稱???????? 如果選項是開啟的狀態(tài)
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/TikyZheng/p/3352208.html
總結(jié)
以上是生活随笔為你收集整理的linux if 命令判断条件总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: codeforces A. Jeff
- 下一篇: C/C++流程图生成器 C转流程图【wo