Shell——if語句
阿新 • • 發佈:2021-07-15
目錄
1、test命令
測試表達式是否成立,若不成立返回0,否則返回其他數值
test 條件表示式 //或者
[ 條件表示式 ]
2、示例
1、格式
操作符 檔名或者目錄名
2、常用的測試操作符
-d∶ 測試是否為目錄(Directory)
-e∶ 測試目錄或檔案是否存在(Exist)
-f∶ 測試是否為檔案(File)
-r∶ 測試當前使用者是否有許可權讀取(Read)
-w∶ 測試當前使用者是否有許可權寫入(Write)
-x∶測試當前使用者是否有許可權執行(eXcute)
-L∶測試是否為軟連結檔案
3、示例
1、格式
[ 整數1 操作符 整數2 ]
2、常用的測試操作符
3、示例
3.1 結合邏輯與進行查詢當前目錄下的檔案數目
3.2 檢視系統記憶體是否低於或者高於1024M,如果滿足條件則提示
3.3 使用雙括號加數字進行表示
1、格式
[ 字串1 = 字串2 ] //判斷是否相等 [ 字串1 != 字串2 ] //判斷是否不等[ -z 字串 ]
2、常用的測試操作符
- =∶ 字串內容相同
- !=∶ 字串內容不同,!號表示相反的意思
- z∶字串內容為空
3、示例
1、格式
[ 表示式1 ] 操作符 [ 表示式2 ]…//或者 命令1 操作符 命令2…
2、常用的測試操作符
- -a或&&∶ 邏輯與,"而且"的意思
- -o或||∶ 邏輯或,"或者"的意思
- !∶邏輯否
3、示例
1、單分支結構
如果只有一個判斷式要進行,那麼我們可以使用單分支的if語句
1.1 格式
if [ 條件判斷式 ];then 當條件判斷成立時,可以進行的命令工作內容 fi
1.2 原理圖
1.3 示例
2、雙分支結構
在同一個資料的判斷中,如果該資料需要進行兩種不同的判斷,就使用雙分支if語句
2.1 格式
if [ 條件判斷式 ];then 當條件判斷成立時,可以進行的命令工作內容else 當條件判斷不成立時可以進行的命令工作內容 fi
2.2 原理圖
2.3 示例
3、多分支結構
如果資料需要進行多種不同的判斷,則可以使用多分支結構
3.1 格式
if [ 條件判斷式 ]; then 當條件判斷成立時,可以進行的命令工作內容 elif [ 條件判斷式二 ]; then 當條件判斷成立時,可以進行的命令工作內容 else 當上面的條件判斷都不成立時,可以進行的命令工作內容 fi
3.2 原理圖
3.3 示例
1、格式
case 變數名稱 in “第一個變數內容” 程式段 ;; “第二個變數內容” 程式段 ;; *) 不包含第一個變數內容與第二個變數內容的其他程式執行段 預設程式段 ;; esac
2、示例
總結
多注意格式