清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
思路:nginx启动后会有nginx.pid文件在指定位置下,通过判断该文件是否存在。决定nginx是否已经启动。
来自:http://my.oschina.net/lsfop/blog/488185
#!/bin/bash #this is my first try to test write a shell to control nginx daemon #History 2015-08-04 masterliu PATH=/usr/bin/:/usr/local/bin:/bin:/usr/sbin:/usr/local/sbin:/sbin:~/bin export PATH #this file could be configured in nginx.conf PIDfile=/usr/local/nginx/logs/nginx.pid Nginxd=/usr/local/nginx/sbin/nginx function start(){ if [ -e $PIDfile ];then echo -e "nginx has already started\t\t[OK]" && exit 0 fi $Nginxd &> /dev/null if [ $? = 0 ];then echo -e "nginx has started\t\t[OK]" else echo -e " nginx start failed\t\t[FAILED]" fi } function stop(){ if [ ! -e $PIDfile ];then echo -e "nginx has already stopped\t\t[OK]" && exit 0 fi #killall nginx $Nginxd -s stop &> /dev/null sleep 2 if [ ! -e $PIDfile ];then echo -e "nginx has stopped\t\t[OK]"; fi } function reload(){ if [ ! -e $PIDfile ];then echo -e "nginx hasn't start\t\t[OK]" && exit 0 fi $Nginxd -s reload && echo -e "nginx has reload\t\t[OK]" && exit 0 } function status(){ if [ ! -e $PIDfile ];then echo -e " nginx hasn't run\t\t[OK]" else echo -e " nginx is running\t\t[OK]" fi } case "$1" in start) start ;; stop) stop ;; restart) stop; start; ;; status) status ;; reload) reload ;; *) echo -e "\t start|stop|restart|status|reload\t" ;; esac
来自:http://my.oschina.net/lsfop/blog/488185