| 標誌 | 意義 | 範例 |
|---|---|---|
| -e | $FILE 是否存在?(常用) | if[ -e $FILE ]; then |
| -f | $FILE 是否存在且為檔案(file)?(常用) | if[ -f $FILE ]; then |
| -d | $FILE 是否存在且為目錄(directory)?(常用) | if[ -d $FILE ]; then |
| -b | $FILE 是否存在且為一個 block device 裝置? | if[ -b $FILE ]; then |
| -c | $FILE 是否存在且為一個 character device 裝置? | if[ -c $FILE ]; then |
| -S | $FILE 是否存在且為一個 Socket 檔案? | if[ -S $FILE ]; then |
| -p | $FILE 是否存在且為一個 FIFO (pipe) 檔案? | if[ -p $FILE ]; then |
| -L | $FILE 是否存在且為一個連結檔? | if[ -L $FILE ]; then |
| 標誌 | 意義 | 範例 |
|---|---|---|
| -r | 偵測該檔名是否存在且具有『可讀』的權限? | if[ -r $FILE ]; then |
| -w | 偵測該檔名是否存在且具有『可寫』的權限? | if[ -w $FILE ]; then |
| -x | 偵測該檔名是否存在且具有『可執行』的權限? | if[ -x $FILE ]; then |
| -u | 偵測該檔名是否存在且具有『SUID』的屬性? | if[ -u $FILE ]; then |
| -g | 偵測該檔名是否存在且具有『SGID』的屬性? | if[ -g $FILE ]; then |
| -k | 偵測該檔名是否存在且具有『Sticky bit』的屬性? | if[ -k $FILE ]; then |
| -s | 偵測該檔名是否存在且為『非空白檔案』? | if[ -s $FILE ]; then |
| 標誌 | 意義 | 範例 |
|---|---|---|
| -nt | (newer than)判斷 $FILE1 是否比 $FILE2 新 | if[ $FILE1 -nt $FILE2 ]; then |
| -ot | (older than)判斷 $FILE1 是否比 $FILE2 舊 | if[ $FILE1 -ot $FILE2 ]; then |
| -ef | 判斷 $FILE1 與 $FILE2 是否為同一檔案, 可用在判斷 hard link 的判定上。 主要意義在判定,兩個檔案是否均指向同一個 inode 哩! | if[ $FILE1 -ef $FILE2 ]; then |
| 標誌 | 意義 | 範例 |
|---|---|---|
| -eq | 兩數值相等 (equal) | if[ n1 -eq n2 ]; then |
| -ne | 兩數值不等 (not equal) | if[ n1 -ne n2 ]; then |
| -gt | n1 大於 n2 (greater than) | if[ n1 -gt n2 ]; then |
| -lt | n1 小於 n2 (less than) | if[ n1 -lt n2 ]; then |
| -ge | n1 大於等於 n2 (greater than or equal) | if[ n1 -ge n2 ]; then |
| -le | n1 小於等於 n2 (less than or equal) | if[ n1 -le n2 ]; then |
| 標誌 | 意義 | 範例 |
|---|---|---|
| -z | 判定字串是否為 0 ?若 $STR 為空字串,則為 true | if[ -z $STR ]; then |
| -n | 判定字串是否非為 0 ?若 $STR 為空字串,則為 false。 註: -n 亦可省略 | if[ -n $STR ]; then |
| = | 判定 $STR1 是否等於 $STR2 ,若相等,則回傳 true | if[ $STR1 = $STR2 ]; then |
| != | 判定 $STR1 是否不等於 $STR2 ,若相等,則回傳 false | if[ $STR1 != $STR2 ]; then |
| 標誌 | 意義 | 範例 |
|---|---|---|
| -a | (and)兩狀況同時成立 | if[ -r $FILE -a -x $FILE ]; then |
| -o | (or)兩狀況任何一個成立 | if[ -r $FILE -o -x $FILE ]; then |
| ! | 反相狀態 | if[ ! -x $FILE ]; then |
沒有留言:
張貼留言
你好!歡迎你在我的 Blog 上留下你寶貴的意見。