【Shell】【学习笔记】Linux Shell脚本应用(七)
课时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 分!不合格
还没有评论,来说两句吧...