• linux Shell 中常用的條件判斷

    1
    Linux C/C++ 24373 次瀏覽

    -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
    $!                 前一個后臺命令的進程號

    轉自:http://www.linuxpig.com/2010/05/linuxshellzhongchangyongdetiaojianpanduan/

     

    相似問題

    相關經驗

    相關資訊

    相關文檔

  • sesese色