shell
程式設計一些條件判斷 總結
-b file
若檔案存在且是乙個塊特殊檔案,則為真
-c file
若檔案存在且是乙個字元特殊檔案,則為真
-d file
若檔案存在且是乙個目錄,則為真
-e file
若檔案存在,則為真
-f file
若檔案存在且是乙個規則檔案,則為真
-g file
若檔案存在且設定了sgid位的值,則為真
-h file
若檔案存在且為乙個符合鏈結,則為真
-k file
若檔案存在且設定了"sticky"位的值
-p file
若檔案存在且為一已命名管道,則為真
-r file
若檔案存在且可讀,則為真
-s file
若檔案存在且其大小大於零,則為真
-u file
若檔案存在且設定了suid位,則為真
-w file
若檔案存在且可寫,則為真
-x file
若檔案存在且可執行,則為真
-o file
若檔案存在且被有效使用者id所擁有,則為真
-z string
若string長度為0,則為真
-n string
若string長度不為0,則為真
string1 = string2
若兩個字串相等,則為真
string1 != string2
若兩個字串不相等,則為真
int1 -eq int2
若int1等於int2,則為真
int1 -ne int2
若int1不等於int2,則為真
int1 -lt int2
若int1小於int2,則為真
int1 -le int2
若int1小於等於int2,則為真
int1 -gt int2
若int1大於int2,則為真
int1 -ge int2
若int1大於等於int2,則為真
!expr
若expr為假則復合表示式為真。expr可以是任何有效的測試表示式
expr1 -a expr2
若expr1和expr2都為真則整式為真
expr1 -o expr2
若expr1和expr2有乙個為真則整式為真
特殊變數
$0
正在被執行命令的名字。對於shell指令碼而言,這是被啟用命令的路徑
$n
該變數與指令碼被啟用時所帶的引數相對應。n是正整數,與引數位置相對應
($1,$2...)
$# 提供指令碼的引數號
$*
所有這些引數都被雙引號引住。若乙個指令碼接收兩個引數,$*等於
$1$2
$@ 所有這些引數都分別被雙引號引住。若乙個指令碼接收到兩個引數,$@等價於
$1$2
$? 前乙個命令執行後的退出狀態
$$
當前shell的程序號。對於shell指令碼,這是其正在執行時的程序
id$! 前乙個後台命令的程序號
Shell 條件判斷總結
一些條件判斷 總結 b file 若檔案存在且是乙個塊特殊檔案,則為真 c file 若檔案存在且是乙個字元特殊檔案,則為真 d file 若檔案存在且是乙個目錄,則為真 e file 若檔案存在,則為真 f file 若檔案存在且是乙個規則檔案,則為真 g file 若檔案存在且設定了sgid位的...
Shell指令碼IF條件判斷和判斷條件總結
前言 無論什麼程式語言都離不開條件判斷。shell也不例外。如下 if list then do something here elif list then do another thing here else do something else here fiex1 bin sh system u...
Shell指令碼IF條件判斷和判斷條件總結
自 前言 無論什麼程式語言都離不開條件判斷。shell也不例外。if list then dosomething here elif list then doanother thing here else dosomething else here fi ex1 bin sh system unam...