case
执行流程:
首先使用变量值与数值1进行比较,若取值相同则执行数值1后的命令序列,直到遇见双分号;; 后跳转至esac,表示分支结束;若与数值1不相匹配,则继续与数值2 进行比较,若取值相同则执行数值2 后的命令序列,直到遇见双分号;; 后跳转至esac,表示结束分支,……依次类推,若找不到任何匹配的值,则执行默认模式*) 后的命令序列,直到遇见esac后结束分支。
格式:
case 变量值 in
数值1)
命令序列
;;
数值2)
命令序列
;;
…
*)
默认命令序列
esac
案例
例子1:记者采访下班回家交通工具,通过case判断市民采取的交通工具
#!/bin/bash
#date:2020-11-26
#用case做一个场景
echo "交通工具选择:"
echo "1.公交"
echo "2.开车"
echo "3.骑车"
read -p "请问您下班选择什么交通工具呢?" choose
case $choose in
1|公交)
echo -e "我:我选择坐公交"
echo -e "记者:好的"
;;
2|开车)
echo -e "我:我选择开车"
echo -e "记者:好的"
;