shell case语句多分支判断

shell脚本,case多条件判断语法基本格式:

#!/bin/bash

op=$1
case ${op} in
条件1)
    cmd_1
    cmd_2
;;
条件2)
    cmd_1
    cmd_2
;;
*)
   cmd_1
   cmd_2
   exit 1        #可以加退出值
;;
esac

        case取值后面必须为关键字 in,每一模式必须以右括号结束。条件1  条件2 取值可以为变量或常数。case 取值将检测匹配的每一个判断条件。一旦匹配,则执行完该判断条件下相应命令后,不再继续其他判断。如果没有匹配的判断条件,则使用星号 * 捕获该值,再执行*里面的指令直到结束。匹配符合之后进入判断分支执行,其间所有命令开始执行直至 ;;    ;; 与C语言中的 break 类似,意思是跳到整个 case 语句到case外面。

        下面是一个例子:

#!/bin/bash


function my_name(){
    echo "my name is cai.xiaoming"
}

echo "sleep begin 1s"
sleep 1

# $1 是case后面的取值, 后面紧跟 in

case $1 in
    ALL)
        echo "I will do ALL"
        #可以在这里加上 $?  执行结果判断
    ;;
    all)
        echo "You will do all"
         #可以在这里加上 $?  执行结果判断, 下面同样可以加
    ;;
    -c|--clean)
        echo "I will clean all my work"
    ;;
    linux-quic)
        echo " linux-quic"
        my_name
        #这里可以对调用接口的返回值进行判断, 然后可以使用exit 退出等操作
    ;;
    lk)
        echo " linux lk"
    ;;
    *)
        echo " anything !"
    ;;
esac

sleep 1

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值