详解Shell编程之if语句实战(小结)

本篇文章主要介绍了详解Shell编程之if语句实战(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
对于if语句,其实很多人都肯定的听说过,那么if语句到底是什么,简单的说,就类似于汉语里面的如果----那么,if语句是linux运维人员在实际环境中使用的最频繁也是最重要的语句!!!

一、if条件语句

1、单分支语句结构

第一种语法如下:

if <条件表达式> then 指令 fi
第二种语法

if <条件表达式>; then 指令 fi
在以上这两种方式中我还是喜欢用第一种,这个是看个人习惯的。在上面的两个语法中<条件表达式>可以是 test [] [[]] (())等条件表达式,甚至可以使用命令作为条件表达式。注意:每个if语句都是以if开头 fi结束,中间并带有then;

其实很简单,举个例子如下:

if [ -f file ] then echo “是一个普通文件” else echo “不是一个普通文件” exit 1 fi
剖析:如果file是一个普通文件,那么就执行echo “是一个普通文件” 否则 输出一条"不是一个普通文件" 最后退出脚本婴儿起名

其实以下的这段命令更能清晰的了解if语句如下:

如果 <你不会if语句> 那么 那肯定长的不帅 果如
2、以上就是单分支的if语句,接下来看看双分支的if语法结构

if <条件表达式> then 指令一 else 指令二 fi
以上就是单分支的if语句结构,那么在举个例子如下:

if [ -f file ] then echo “这是一个普通文件” else echo “NONONO” fi
这个和以上的例子是一样的。同样是测试file是不是一个普通文件,如果是,那么就输出指令1 否则那么就输出指令2

到这里我们在来一个形象描述

如果 <你不会if语句> 那么 就快点学,快点练 否则 你永远都不可能学会 果如
我们发现 单分支和双分支的区别就在于一个有else 一个没有。

3、多分支if语句结构

我们在上面说了 单分支和双分支 这里又有了一个多分支,我们可以理解为双分支里面包含了单分支,那么多分支里面肯定包含了单分支+双分支:个人理解,好像有点绕? 先来看看多分支吧 如下:

if 语句多分支结构主体为:如果…那么…否则如果…那么…否则如果…那么,,,,

例1:

if [ -f file ] then echo “yes yes yes” elif [ -z file ] then echo “yes yes” else echo “nonono” fi
解释如下图:
在这里插入图片描述

看完图还是没理解? 没有关系 如下:
在这里插入图片描述

到这里应该是没有问题了~~

单分支if条件语句实践

把下面的测试文件中条件表达式改为if条件语句

[root@shell-yankerp sh]# [ -f file ] && echo “yes” || echo “no” yes
修改如下:

if [ -f file ] then echo “yes” else echo “no” fi
运行结果如下:

[root@shell-yankerp sh]# [ -f file ] && echo “yes” || echo “no” yes [root@shell-yankerp sh]# sh cs.sh yes [root@shell-yankerp sh]# cat cs.sh #!/bin/bash # Maintenance:ywyankerp@163.com # BINLOG:www.ywyankai.cn # DATE:03:31:35 CST, Sunday, 02 month, 2018, 04 # Test scripts if [ -f file ] then echo “yes” else echo “no” fi [root@shell-yankerp sh]#

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值