使用case语句编写系统服务脚本
case 语句
case语句可以很好的代替if语句中的多分支结构,使用case分支语句时,有几个值得注意的特点如下所述:
case行尾必须是单词“in”,每一模式必须以右括号“)”结束;
双分号“;;”表示命令序列的结束;
模式字符串,可以用方括号表示一个连续的范围,如"[0-9]",还可以使用竖杠“|”表示或,如“A|B”。
最后的“ *) ”表示默认模式,其中的 * 表示通配符。
【使用case语句编写系统服务脚本】sleep命令是用来暂停指定描述的时间,可根据自己需要改为相应后台服务的控制命令序列。
[root@localhost ~]# vim myprog.sh
#!/bin/bash
case "$1" in
start)
echo -n "正在启动sleep服务..."
if
sleep 7200 &
then
echo "OK"
fi
;
;
stop)
echo -n "正在停止sellp服务。。。"
pkill "sleep" &> /dev/null
echo "OK"
;
;
status)
if
pgrep "sleep" &> /dev/null
then
echo "sleep服务已经启动。"
else
echo "sleep服务已经停止。"
fi
;
;
restart)
$0 stop
$0 start
;
;
\*)
echo "用法:$0 { start | stop | status | restart }"
esac#保存退出,测试脚本:
[root@localhost ~]# ./myprog.sh stop
正在停止sellp服务。。。OK
[root@localhost ~]# ./myprog.sh status
sleep服务已经启动。
[root@localhost ~]# ./myprog.shstart
正在启动sleep服务...OK
推荐阅读
- 由浅入深理解AOP
- 【译】20个更有效地使用谷歌搜索的技巧
- mybatisplus如何在xml的连表查询中使用queryWrapper
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- MybatisPlus使用queryWrapper如何实现复杂查询
- iOS中的Block
- Linux下面如何查看tomcat已经使用多少线程
- 使用composer自动加载类文件
- android|android studio中ndk的使用
- 使用协程爬取网页,计算网页数据大小