问题
本案例要求编写3个Shell脚本,分别实现以下目标:
检测/media/cdrom目录,若不存在则创建
检测并判断指定的主机是否可ping通
从键盘读取一个分数,判断成绩分档(优秀、良好、不合格)
方案
if单分支的语法组成:
if 条件测试
then 命令序列
fi
if双分支的语法组成:
if 条件测试
then 命令序列1
else 命令序列2
fi
if多分支的语法组成:
if 条件测试1
then 命令序列1
elif 条件测试2
then 命令序列2
else 命令序列n
fi
if多分支结构实际上相当于多层if嵌套:
if 条件测试1 ; then
命令序列1
else
if 条件测试2 ; then
命令序列2
else
.. ..
命令序列n
fi
fi
步骤
实现此案例需要按照如下步骤进行。
步骤一:检测/media/cdrom目录,若不存在则创建
1)分析任务需求
可能需要执行的操作:创建文件夹/media/cdrom。
执行该操作需要满足的条件:/media/cdrom目录经检测后发现不存在。
2)采用if单分支结构整理实现思路
if [ 目录/media/cdrom不存在 ] ; then
创建文件夹/media/cdrom
fi
3)根据实现思路编写脚本、替换为相关操作语句
[root@svr5 ~]# vim chkmountdir.sh
#!/bin/bash
MOUNT_DIR="/media/cdrom/"
if [ ! -d $MOUNT_DIR ]
then
mkdir -p $MOUNT_DIR
fi
[root@svr5 ~]# chmod +x chkmountdir.sh //添加可执行权限
4)测试、验证脚本功能
[root@svr5 ~]# ls -ld /media/cdrom //本来没有/media/cd