shell 脚本应用《四》Nginx服务启动停止重新加载脚本

Nginx服务启动停止重新加载脚本
已知Nginx管理命令为:
启动:/application/nginx/sbin/nginx
停止:/application/nginx/sbin/nginx -s stop
重新加载:/application/nginx/sbin/nginx -s reload
请用case脚本模拟Nginx启动关闭
/etc/init.d/nginx{start|stop|restart|reload}
并实现可通过chkonfig管理

脚本:

#
#nginx 启动脚本
#2018-11-29
#

#!/bin/bash
#调用系统函数及自定义变量
[ -f /etc/init.d/functions ]&& . /etc/init.d/functions
Pidfile=/application/nginx/logs/nginx.pid
#共用函数
publics(){
RETVAL=$?
if [ $RETVAL -eq 0 ];then
action "Nginx is $1" /bin/true
else
actio "Nginx is $1" /bin/false
fi
}
#启动函数start
start(){
if [ -f $Pidfile ];then
echo "Nginx is running"
else
/application/nginx/sbin/nginx
publics Started
fi
return $RETVAL
}
#关闭函数stop
stop(){
if [ ! -f $Pidfile ];then
echo "Nginx is not runing"
else
/application/nginx/sbin/nginx -s stop
publics Stopped
fi
return $RETVAL
}
#重新加载函数reload
reload(){
if [ ! -f $Pidfile ];then
echo "Can't open $Pidfile ,no such file directory"
else
/application/nginx/sbin/nginx -s reload
publics Reload
fi
return $RETVAL
}
#case 语句使用选择
case "$1" in
start)
start
RETVAL=$?
;;
stop)
stop
RETVAL=$?
;;
reload)
reload
RETVAL=$?
;;
restart)
stop
sleep 2
start
RETVAL=$?
;;
*)
echo "USAGE:$0 {satrt|stop|restart|reload}"
exit 1
;;
esac