shell中的條件判斷: (選項參考man test)
1. 文件判斷:
判斷目錄存在不存在: test -d /home 執行后使用$?查看結果為0, 表示是目錄; test命令無論執行結果如何, 都不會報錯, 只會返回0或非0
test -d /home 語法等同於 [ -d /home ] test可使用[來代替, 后面的]只不過是一個參數, 不要把這個當作方括號看待, 人家是個命令啊.
2. 數值判斷:
if [ $UID -ne 0 ]; then $UID用戶判斷當前用戶是否是root, 是0否非0; -ne 即不等於的意思
3. 字符判斷:
if [ $USER = "root" ]; then $USER用來獲取當前登錄的用戶名, 字符的判斷直接使用=即可. =和==效果一樣
邏輯比較: [ ] 中多用來進行邏輯比較, 如下:
[ -z "$name" ] [ -n "$name" ] 用來判斷變量長度是否為0, 注意shell中字符變量使用時最好都加上雙引號
shell中, 變量未定義或值為空時, 長度都是0