07. Shell-流程控制

基本语法结构

if结构

简介

只要正确,就要一直向前冲。
添加一个条件判断,如果条件判断为真(True)则执行后续命令;条件判断为假(False)则直接结束。

格式

#写法一:
if [ 判断条件 ]; then
	commands
fi

#写法二:
if [[ 判断条件 []; then
	commands
fi

#写法三:
if test 判断条件; then
	commands
fi

#类似于
[ 判断条件 ] && commands

流程图

举例

read -p "请输入名字:" NAME
if [ "$NAME" == "wangmingqu" ]; then
   echo "您输入的名字为:$NAME"
   echo "欢迎光临"
fi

if…else结构

简介

分叉路口,二选一。
添加一个条件判断,如果条件判断为真(True)则执行命令1;如果条件判断为假(False)则执行命令2

格式

#写法一:
if [ 判断条件 ]; then
	   commands1
else
     commands2
fi

#写法二:
if [[ 判断条件 ]]; then
	   commands1
else
     commands2
fi

#写法三:
if test 判断条件; then
	   commands1
else
     commands2
fi

#类似于
[ 判断条件 ] && commands1 || commands2

流程图

举例

read -p "请输入名字:" NAME
if [ $NAME == "wangmingqu" ]; then
  echo "您输入的名字为:$NAME"
  echo "欢迎光临"
else
  echo "您输入的名字是:$NAME"
  echo "进错房间啦"
fi

if…elif…else

简介

选择很多,能走的路只有一条。
如果条件1满足,执行命令1后结束;如果条件1不满足,再看条件2,如果条件2满足则执行命令2后结束;如果条件1和条件2都不满足,那么执行命令3。

格式

#写法一:
if [ 判断条件1 ]; then
	   commands1
elif [ 判断条件1 ]; then
     commands2
else
     commands3
fi

#写法二:
if [[ 判断条件1 ]]; then
	   commands1
elif [[ 判断条件1 ]]; then
     commands2
else
     commands3
fi

#写法三:
if test 判断条件1; then
	   commands1
elif test 判断条件2; then
     commands2
else
     commands3
fi

流程图

举例

read -p "请输入数值:" NUMBER

if [ $NUMBER -lt 10 ]; then
	 echo "输入的数值是个位数"
elif [ $NUMBER -ge 10 ] && [ $NUMBER -lt 100 ]; then
   echo "输入的数值是十位数"
else
	 echo "输入的数值大于等于100"
fi

层次嵌套

简介

多次判断,多条路,能走的路只有一条。
如果条件1满足,执行命令1;如果条件2也满足执行命令2,如果不满足只执行命令1,然后结束。
如果条件1不满足,不看条件2,直接看条件3,如果条件3满足执行命令3;如果条件3不满足,则看条件4。如果条件4满足则执行命令4,如果条件4不满足则执行命令5.

格式

if [ 条件判断1 ]; then
	commands1
 if [ 条件判断2 ]; then
		commands2
 fi
else
	if [ 条件判断3 ]; then
  	commands3
  elif [ 条件判断4 ]; then
    commands4
  else
    commadns5
  fi
fi

流程图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值