【Shell】【学习笔记】Linux Shell脚本应用(七)

港控/mmm° 2022-08-13 12:43 353阅读 0赞

课时7 使用if判断结构

一、程序流控制

执行过程的顺序化、自动化:智能化的选择及处理;让重复操作更聪明一些。

二、单分支/双分支的if应用

单分支if语句结构:

if条件测试

then 命令序列

fi

示例1:检查备份目录/opt/mrepo,若不存在则创建

[ root@localhost ~]# cat chkdir.sh

#!/bin/bash

BACKUP_DIR=”/opt/mrepo”

if [ ! -d $ BACKUP_DIR ]

then

mkdir -p $ BACKUP_DIR

fi

双分支if语句结构:

if条件测试

then 命令序列1

else 命令序列2

fi

示例2:判断目标主机是否存活,显示检测结果

[ root@localhost ~]# cat chkhost.sh

#!/bin/bash

ping -c 3 -i 0.2 -W 3 $1 &> /dev/null

if [ $? -eq 0 ]

then

echo “Host $1 is up.”

else

echo “Host $1 is down.”

fi

[ root@localhost ~]# ./chkhost.sh 192.168.4.11

Host 192.168.4.11 is up.

[ root@localhost ~]# ./chkhost.sh 192.168.4.13

Host 192.168.4.13 is down.

三、多重分支的if应用

多分支if语句结构:

if条件测试1

then 命令序列1

elif条件测试2

then命令序列2

……

else

命令序列n

fi

示例3:判断机试分数,区分优秀/合格/不合格

[ root@localhost ~]# cat gradediv.sh

#!/bin/bash

read -p “请输入您的分数(0-100):” GRADE

if [ $GRADE -ge 85 ] && [ $ GRADE -le 100 ] ; then

echo “$GRADE 分!优秀”

elif [ $ GRADE -ge 70 ] && [ $ GRADE -le 84 ] ; then

echo “ $ GRADE 分,合格 “

else

echo “ $ GRADE 分,不合格 “

fi

[ root@localhost ~]# ./ gradediv.sh

请输入您的分数(0-100):89

89 分!优秀

[ root@localhost ~]# ./gradediv.sh

请输入您的分数(0-100):47

47 分!不合格

发表评论

表情:
评论列表 (有 0 条评论,353人围观)

还没有评论,来说两句吧...

相关阅读