Ubuntu 16.04.05自定義啓動與停止腳本

1、start.sh(啓動腳本)

#!/bin/sh
echo "Service: \033[40G[\033[49;32;5mStart\033[0m]\n";
# 啓動Nginx
/usr/local/nginx/sbin/nginx
# 啓動Php-fpm
/usr/local/php/sbin/php-fpm
# 啓動mysql
/etc/init.d/mysql start
netstat -naptu | grep -E 'nginx|php-fpm|mysqld'
echo "Service: \033[40G[\033[49;32;5mDone\033[0m]\n";

這裏寫圖片描述

2、stop.sh(停止腳本)


#!/bin/sh
Server_Name="nginx php-fpm mysql"
echo "Service: \033[40G[\033[49;32;5mStop\033[0m]\n";
# 停止Nginx
/usr/local/nginx/sbin/nginx -s stop
# 關閉Mysql
/etc/init.d/mysql stop
# 關閉PHP-FPM
ps -ef|grep php-fpm|awk -F ' ' '{print $2}'|xargs kill -9
# 顯示進程信息
netstat -naptu
echo "Service: \033[40G[\033[49;32;5mDone\033[0m]\n";

這裏寫圖片描述

1、未對進程是否啓動做判斷
2、必須給腳本賦權限,如:chmod 777 start.sh
3、執行腳本必須帶”/”,如:./start.sh

3、參考腳本

停止服務時,判斷進程是否存在,然後kill

#!/bin/sh
USR_NAME=`whoami`
Server_Name="nginx php-fpm mysql"
printf "\n正在停止服務,請等待\n"
for i in $Server_Name
do
pid=`ps -e | grep $i |awk '{print $1}'`
if [ "$pid" != "" ]; then
  kill -9 $pid
  sleep 3
fi
done

#./catalina.sh stop

ps -ef|grep ${USR_NAME} | grep -v bash | grep -v sshd

echo "Shutdown nginx php-fpm service done"
echo "Shutdown web ok ."
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章