shell编程——Shell多重判断及优化

多重判断语法elif,else if。只能选1

if 条件1; then

  #命令,条件1成立执行

elif 条件2;then

  #命令,条件1不成立,条件2成立执行

elif 条件3;then

  #命令,条件1不成立,条件2不成立,条件3成立执行

else

  #命令 ,以上条件都不成立执行

fi

案例如下,只能进入一个命令块

number1=100

if [ $number1 -le 0 ];then

  echo "$number1 <= 0"

elif [ $number1 -le 10 ];then

  echo "$number1 > 0"

  echo "$number1 <= 10"

else

  echo "$number1 > 10"

fi

字符串案例

choice="No"

if [ "$choice" == "no" ] || [ "$choice" == "No" ];then

  echo "choice is no"

elif [ "$choice" == "yes" ];then

  echo "choice is yes"

else

  echo "not no not yes"

fi

if做多重判断有个问题,就是当条件比较多的时候比较麻烦,可以借用case去改善它。

case多重判断语法,case还支持正则,后续会讲解正则

choice="justdoit"

case "$choice" in

  "yes" | "Yes")

    echo "in yes";;

  "no" | "No")

    echo "in no";;

  "jackin" | "justdoit")

    echo "in jackin";;

  *)

    echo "in other other";;

esac

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

保定公民

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值