多分支case条件语句
概念
- case语句和if...elif...else语句一样都是多分支条件语句,不过和if多分支条件语句不同的是,case语句只能判断一种条件关系,而if语句可以判断多种条件关系。
- case适用列表,选项型判断,执行速度比if更快
格式
- case $变量名 in
- “值1”)
- 如果变量的值等于1,则执行程序1
- ;;
- “值2”)
- 如果变量的值等于2,则执行程序2
- ;;
- …省略其他分支…
- *)
- 如果变量的值都不是以上的值,则执行此程序
- ;;
- esac
例子
需求:选择你要前往的城市,系统自动给出出现方案
脚本:
#!/bin/bash
echo "前往上海输入:1"
echo "前往杭州输入:2"
echo "前往美国输入:3"
read -t 30 -p "请输入目的地代号:" local
case $local in
"1")
echo "前往上海可以乘坐高铁、飞机、游轮"
;;
"2")
echo "前往杭州可以乘坐高铁、飞机"
;;
"3")
echo "美国东风快递直达"
;;
*)
echo "输入有误"
;;
esac