1. 程式人生 > >Shell腳本的條件判斷與比較

Shell腳本的條件判斷與比較

shell腳本 中一 不能 rst ali 大小 表達式 操作符 內容

條件測試常用的語法:

語法格式說明
[ <測試表達式> ][]的邊界和內容之間至少有一個空格
[[ <測試表達式> ]][[]的邊界和內容之間至少有一個空格

註意:&&、||、>、<等操作符可以應用於[[]]中,但不能應用於[]中,在[]中一般用-a,-o,-gt(用於整數)代替上述操作符

常用的文件判斷操作符



-d 文件,d的全拼為directory文件存在且為目錄則為真,即測試表達式成立
-f 文件,f的全拼為file文件存在且為普通文件則為真,即測試表達式成立
-e 文件, e的全拼為exist文件存在則為真,即測試表達式成立。-e不辨別是目錄還是文件
-r/w/x 文件,r/w/x的全拼為read/write/executable文件存在且可讀/可寫/可執行,即測試表達式成立
-s 文件,s的全拼為size文件存在且文件大小不為0則為真
-L 文件,L的全拼為Link文件存在且為鏈接文件則為真
f1 -nt f2,nt的全拼為newer than 文件f1比文件f2新則為真
f1 -ot f2,ot的全拼為older than 文件f1比文件f2舊則為真

常用的字符串測試表達式


-n "字符串"若字符串的長度不為0,則為真
-z "字符串"若字符串的長度不為0,則為真

操作符比較

在test以及[]中使用的比較符號
在(())和[[]]中使用的比較符號說明
-eq==或=等於
-ne!=不等於
-gt>大於
-ge>=大於等於
-lt<小於
-le<=小於等於
-a
&&
-o||
!!


Shell腳本的條件判斷與比較