1柒爸、多分支case條件語(yǔ)句
case語(yǔ)句和if…elif…else語(yǔ)句一樣都是多分支條件語(yǔ)句崎坊,不過(guò)和if多分支條件語(yǔ)句不同的是宿百,case語(yǔ)句只能判斷一種條件關(guān)系。
命令格式如下所示:
case $變量名 in
"值1")
如果變量的值等于值1腔寡,則執(zhí)行程序1
;;
"值2")
如果變量的值等于值2焚鲜,則執(zhí)行程序2
;;
...省略其他分支... *)
如果變量的值都不是以上的值,則執(zhí)行此程序
;;
esac
2放前、使用case編寫(xiě)shell腳本
編寫(xiě)腳本實(shí)現(xiàn)功能:當(dāng)輸入1-7的時(shí)候忿磅,分別顯示選擇的是星期一、星期二凭语、星期三葱她、星期四、星期五似扔、星期六吨些、星期日。當(dāng)輸入的時(shí)候其他的時(shí)候炒辉,顯示輸入錯(cuò)誤豪墅。
#!/bin/bash
#當(dāng)輸入1-7的時(shí)候,分別顯示選擇的是星期一到星期日黔寇。
#當(dāng)輸入的時(shí)候其他的時(shí)候偶器,顯示輸入錯(cuò)誤
read -p "請(qǐng)輸入一個(gè)數(shù)字1-7:" -t 30 input
case $input in
"1")
echo "你選擇的是星期一!!!"
;;
"2")
echo "你選擇的是星期二!!!"
;;
"3")
echo "你選擇的是星期三!!!"
;;
"4")
echo "你選擇的是星期四!!!"
;;
"5")
echo "你選擇的是星期五!!!"
;;
"6")
echo "你選擇的是星期六!!!"
;;
"7")
echo "你選擇的是星期日!!!"
;;
*)
echo "輸入信息錯(cuò)誤"
;;
esac
給腳本casedemo.sh賦予執(zhí)行權(quán)限,執(zhí)行命令:
chmod 755 casedemo.sh
執(zhí)行腳本啡氢,輸出結(jié)果如下圖所示: