# 停止服务 stop() { is_running if [ $? -eq "0" ]; then echo"没有检测到服务启动,请启动之后在尝试" exit 2 fi pid=$(cat ${PID_FILE}) kill${pid} rm -rf ${PID_FILE} sleep 1 is_running if [ $? -eq "1" ]; then kill -9 ${pid} fi echo"成功结束${SERVER_NAME}的进程" }
# 查询服务运行状态 status() { is_running if [ $? -eq "1" ]; then echo"${SERVER_NAME}服务正在运行中,当前服务的PID为${pid}" else echo"${SERVER_NAME}服务没有在运行" fi exit 0 }
# 重启服务 restart() { is_running if [ $? -eq "1" ]; then stop start else echo"当前服务并没有运行,请运行之后在尝试" fi exit 0 }
init
case"$1"in "--info") info ;; "--start") start ;; "--stop") stop ;; "--status") status ;; "--restart") restart ;; *) usage ;; esac
exit 0
以下是使用方法
1 2 3 4 5 6 7 8 9 10 11 12
# 获取当前服务信息 sh start.sh --info # 启动服务 sh start.sh --start # 停止服务 sh start.sh --stop # 查询服务状态 sh start.sh --status # 重启服务 sh start.sh --restart # 提示使用信息 sh start