Shell脚本if、case语句解析

if语句结构

单分支if语句结构

if语句结尾都要接入一个对应fi,代表该段语句结束

if单分支结构的判断过程

if  条件测试操作
        then    命令序列
fi    #结尾语句

单分支举例

在这里插入图片描述

双分支if语句结构

if       条件测试操作
       then    命令序列1
       else     命令序列2
 fi    #结尾语句

双分支举例

在这里插入图片描述

多分支if语句结构

if      条件测试操作1
      then    命令序列1
elif 条件测试操作2
      then    命令序列2
else
      命令序列3
fi

多分支举例

在这里插入图片描述

case语句

case多分支结构

case行尾必须为单词“in”;每一个模式必须以右括号“)”结束

双分号“;;”表示命令序列的结束

模式字符串中,可以用方括号来表示一个连续的范围,如“[0-9]”;还可以用“|”来表示,如“A|B”

最后的“*)”表示默认模式,星号相当于通配符

case多分支结构的判断过程

case 变量值 in
模式1)
      命令序列1
      ;;
模式2)
      命令序列2
      ;;
      ......
*)
     默认命令序列
esac

case多分支举例

#!/bin/bash
read -p "输入测试分数(0-100) : " score
     if [ $score -le 100 -o $score -ge 0 ];then
        if [ $score -le 100 -o $score -ge 60 ];then
           [[ $score -ge 80 && $score -le 100 ]] && a="nice"
           [[ $score -ge 60 && $score -lt 79 ]] && a="good"
           [[ $score -ge 0 && $score -lt 59 ]] && a="oh!"
           case $score in
           great)
	           echo " $score分,棒 "
               ;;
           standard)
               echo " $score分,可! "
               ;;
           false)
	           echo "$score分,拉! "
           esac
      else
           echo "重新输入"
fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值