|NO.Z.00023|——————————|LinuxShell|——|Linux&Shell&流程控制.V04|——|多分支case条件语句|

一、多分支case条件语句
### --- case 语句和 if…elif…else 语句一样都是多分支条件语句,
~~~     不过和 if 多分支条件语句不同的是,case 语句只能判断一种条件关系,
~~~     而 if 语句可以判断多种条件关系。case 语句语法如下:

case $变量名 in
    "值 1")
        如果变量的值等于值 1,则执行程序 1
        ;;
    "值 2")
        如果变量的值等于值 2,则执行程序 2
        ::
    …省略其他分支…
    *)
        如果变量的值都不是以上的值,则执行此程序
        ;;
esac
### --- 这个语句需要注意以下内容:

~~~     case 语句,会取出变量中的值,然后与语句体中的值逐一比较。
~~~     如果数值符合,则执行对应的程序,如果数值不符,则依次比较下一个值。
~~~     如果所有的值都不符合,则执行“*)”(“*”代表所有其他值)中的程序。
~~~     case 语句以“case”开头,以“esac”结尾。
~~~     每一个分支程序之后要通过“;;”双分号结尾,
~~~     代表该程序段结束(千万不要忘记,超哥每次写 case语句,都会忘记双分号,有点“囧”)。
二、实例一:
### --- 我们写一个判断是“yes/no”的例子:

[root@localhost ~]# vi sh/case.sh
#!/bin/bash
#判断用户输入
# Author: shenchao (E-mail: shenchao@atguigu.com)

read -p "Please choose yes/no: " -t 30 cho
#在屏幕上输出“请选择 yes/no”,然后把用户选择赋予变量 cho
case $cho in
#判断变量 cho 的值
        "yes")
        #如果是 yes
                echo "Your choose is yes!"
                #执行程序 1
                ;;
        "no")
        #如果是 no
                echo "Your choose is no!"
                #执行程序 2
                ;;
        *)
        #如果既不是 yes,也不是 no
                echo "Your choose is error!"
                #则执行此程序
                ;;
esac

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on 2022-03-26 23:09  yanqi_vip  阅读(26)  评论(0)    收藏  举报

导航