shell-if

条件结构

1.条件结构能够根据某个特定条件是否满足,来选择执行相应的任务。

   if命令是最简单的决策形式。if/else命令提供双路决策,而if/elif/else命令则提供多路决策。

2.bash可以测试两种类型的条件:命令成功或失败,表达式为真或假。

   在任何一种类型的测试中,都要使用退出状态。

   退出状态为0表示命令成功或表达式为真,非0表示命令失败或表达式为假

3.状态变量“?”中保存的是退出状态值,查看方式为:echo  $?

if命令

1.if命令是条件结构的最简单形式,跟在if结构后面的命令被执行,并返回其退出状态

2.在bash shell中,跟在if后面的是一条或一组命令。

   如果该命令(指最后一条命令)的退出状态为0,shell就执行从then到fi之间的语句块,关键字fi结束if结构

   如果退出状态非0,说明命令由于某种原因运行失败,shell忽略关键字then后的语句

3.知道一条被测试命令的退出状态是很重要的。

   例如,grep的退出状态能够准确的告诉我们grep是否在文件中找到了它所查找的模式

   如果查找成功,grep返回退出状态0,不成功则返回1

4.sed和awk程序也查找模块,但是不论是否找到模块,他们都报告一个成功的返回状态。

   因为sed和awk判断成功的标准是语法是否正确,而不是从功能上进行判断。

if的语句格式

      if    commands

      then

            commands    

      fi

        if后的commands先执行,最后一个命令的返回状态为0则执行then之后的commands

      否则if结束

------------------------------------------------------------------------------------------------------------------------------------------

      if    commands

      then

            commands   

      else

            commands

      fi

      if后的commands先执行,最后一个命令的返回状态为0则执行then之后的commands

      否则执行else之后的commands

------------------------------------------------------------------------------------------------------------------------------------------

      if    commands

      then

             commands

      elif    commands

         then       

                commands

      fi   

      if后的commands先执行,最后一个命令的返回状态为0则执行then之后的commands,然后if语句结束

      否则执行 elif后面的commands,如果elif后的commands返回状态为0则执行之后then之后的commands

      否则结束if语句

-----------------------------------------------------------------------------------------------------------------------------------

      if    commands

      then

             commands

      elif    commands

         then

                commands

         else 

                commands

      fi

      if后的commands先执行,最后一个命令的返回状态为0则执行then之后的commands,然后if语句结束

      否则执行 elif后面的commands,如果elif后的commands返回状态为0则执行之后then之后的commands

      否则执行else之后的commands直到fi结束。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值