Shell case語句為多選擇語句。可以用case語句匹配一個(gè)值與一個(gè)模式,如果匹配成功,執(zhí)行相匹配的命令。case語句格式如下:
復(fù)制代碼 代碼如下:
case 值 in
模式1)
command1
command2
...
commandN
;;
模式2)
command1
command2
...
commandN
;;
esac
case工作方式如上所示。取值后面必須為單詞in,每一模式必須以右括號(hào)結(jié)束。取值可以為變量或常數(shù)。匹配發(fā)現(xiàn)取值符合某一模式后,其間所有命令開始執(zhí)行直至 ;;。
取值將檢測匹配的每一個(gè)模式。一旦模式匹配,則執(zhí)行完匹配模式相應(yīng)命令后不再繼續(xù)其他模式。如果無一匹配模式,使用星號(hào) * 捕獲該值,再執(zhí)行后面的命令。
下面的腳本提示輸入1到4,與每一種模式進(jìn)行匹配:
復(fù)制代碼 代碼如下:
echo 'Input a number between 1 to 4'
echo 'Your number is:\c'
read aNum
case $aNum in
1) echo 'You select 1'
;;
2) echo 'You select 2'
;;
3) echo 'You select 3'
;;
4) echo 'You select 4'
;;
*) echo 'You do not select a number between 1 to 4'
;;
esac
輸入不同的內(nèi)容,會(huì)有不同的結(jié)果,例如:
Input a number between 1 to 4
Your number is:3
You select 3
您可能感興趣的文章:- shell腳本編程之case語句學(xué)習(xí)筆記
- linux shell流程控制語句實(shí)例講解(if、for、while、case語句實(shí)例)
- linux bash shell中case語句的實(shí)例
- Shell編程之case語句實(shí)戰(zhàn)(小結(jié))