shell指令碼,case多條件判斷語法基本格式:
#!/bin/bash
op=$1
case $ in
條件1)
cmd_1
cmd_2
;;條件2)
cmd_1
cmd_2
;;*)
cmd_1
cmd_2
exit 1 #可以加退出值
;;esac
case取值後面必須為關鍵字 in,每一模式必須以右括號結束。條件1 條件2 取值可以為變數或常數。case 取值將檢測匹配的每乙個判斷條件。一旦匹配,則執行完該判斷條件下相應命令後,不再繼續其他判斷。如果沒有匹配的判斷條件,則使用星號 * 捕獲該值,再執行*裡面的指令直到結束。匹配符合之後進入判斷分支執行,其間所有命令開始執行直至 ;; ;; 與c語言中的 break 類似,意思是跳到整個 case 語句到case外面。
下面是乙個例子:
#!/bin/bash
function my_name()
echo "sleep begin 1s"
sleep 1
# $1 是case後面的取值, 後面緊跟 in
case $1 in
all)
echo "i will do all"
#可以在這裡加上 $? 執行結果判斷
;;all)
echo "you will do all"
#可以在這裡加上 $? 執行結果判斷, 下面同樣可以加
;;-c|--clean)
echo "i will clean all my work"
;;linux-quic)
echo " linux-quic"
my_name
#這裡可以對呼叫介面的返回值進行判斷, 然後可以使用exit 退出等操作
;;lk)
echo " linux lk"
;;*)
echo " anything !"
;;esac
sleep 1
shell case結構的多分支執行
通常,我們使用 case 結構是不同的分支執行不同的命令,例如 bin bash var a case var in a echo case a b echo case b c echo case c echo case esac這個指令碼每次只能執行乙個分支。如果有兩個分支執行相同的動作,那麼我們...
Shell多分支if語句
一 語法 if 條件判斷式 then 當條件判斷式1成立時,執行程式1 elif 條件判斷式2 then 當條件判斷式2成立時,執行程式2 省略更多條件 else 當所有條件都不成立時,最後執行程式 fi 二 實現計算器 bin bash read t 30 p please input num1 ...
多分支語句(case)
環境配置 測試指令碼 test.sh pattern 模式 式 格局 樣式 case語法 case 1 in pattern1 語句1 pattern2 語句2 patternn 語句n 例如 root jack31 vim if.sh bin bash test case 1in monitor ...