shell编程之条件语句 (二)内有案例可跟做加深理解 适合小白

1、条件测试

在这里插入图片描述

(1)文件测试与整数测试

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(2)字符串测试与逻辑测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、if语句结构

if语句包含单分支结构、双分支结构、多分枝结构,下面我们详细了解一下各分支有什么区别

(1)if单分支语句

在这里插入图片描述
如上图所示if单分支可以实现简单的判定,当我们条件满足我们设定的标准时就可以输出下一个命令,而不满足条件时则直接结束判定不会继续执行命令,例如下面案例我们需要判定挂载目录是否存在,如果不存在我们创建目录,如果存在则不执行创建命令

[root@kgc ~]# vi 1.sh
#!/bin/bash                               ###注释
MOUNT_DIR="/root/fang/"                 ###将"/root/fang/"赋予变量MOUNT_DIR
if [ ! -d $MOUNT_DIR ]         ###用if判定,!表示不存在 -d表示测试是否为目录,这里的意思就是
                                  判定目录不存在
then
mkdir -p $MOUNT_DIR           ###如果不存在就会创建目录,如果存在这条命令就不会执行
fi
[root@kgc ~]# chmod +x 1.sh    ###给1.sh添加执行权限
[root@kgc ~]# ./1.sh           ###执行1.sh
[root@kgc ~]# ll               ###查看一下,已经创建fang目录
drwxr-xr-x. 2 root root     6 Aug 26 07:44 fang

(2)if 双分支语句

在这里插入图片描述
双分支语句比单分支要多一个判断,如图,假设我们有一个httpd网站正在监听,那我们监听的端口就是80,正常我们输出的就是网站服务正在运行,否则我们执行的就是else,启动httpd服务。这里肯能不好理解,那我们换个案例来说,现在我们要ping一个网段看主机是存活并显示结果。

#!/bin/bash
  ping -c 3 -i 0.2 -W 3 $1 &>/dev/null   ####“-c” “-i” “-W”分别表示测试包 间隔 超时,并将
                                              所有结果放到/dev/null中
   if [ $? -eq 0 ]                       ### 如果这个放回值为0,那就符合我们的判定  
   then
   echo "host $1 is up."                ###输出为 host $1 up
   else                                  ###如果这个值为非0 那与我们判定的=0不同
   echo "host $1 is down."              ###输出为 host $1 down
   fi
[root@kgc ~]# bash 6.sh 20.0.0.1        ###6.sh是我们刚刚编辑的脚本名,ip20.0.0.1则是我们
host 20.0.0.1 is down.                     ping的IP地址也是脚本$1的位参
[root@kgc ~]# bash 6.sh 20.0.0.2       
host 20.0.0.2 is up.

if多分支语句

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3、case多分支语句

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
开启关闭http服务实验需要线确保centos中已安装好httpd,否则没法进行实验

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值