流程控制-case语句

多分支case语句
case语句和if....elif...esle语句一样都是多分支条件语句,不过和if多分支条件语句不同的是,case语句只能判断一种条件关系,而if语句可以判断多种条件关系。

case语法:

case $变量名 in
"值1")
如果变量的值等于值1,则执行程序1
;;
"值2")
如果变量的值等于值2,则执行程序2
;;
*)
如果变量的值都不是以上的值,则执行此程序
;;
esac

case语句主要在shell中用来输出一个判断列表

举例:

#!/bin/bash
#选择乘坐的航班
#handbye 2017.4.17
echo "if you want go to shanghai,please intput 1"
echo "if you want go to beijing,please intput 2"
echo "if you want go to chengdu,please intput 3"

read -t 30 -p "choose your plan:  " cho
case $cho in
       1)
     echo "you choose shanghai,please wait a moment"
        ;;
       2)
      echo "you choose beijing,please wait a moment" 
        ;; 
       3)
      echo "you choose chengdu,please wait a moment"
       ;;
        *)
      echo "error only 1/2/3" 
       ;;
esac