| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- #!/bin/bash
- echo "entry..."
- # 定义变量
- # 要运行的jar包路径,加不加引号都行。 注意:等号两边 不能 有空格,否则会提示command找不到
- APP_NAME=web_app_2006.py
- # 日志路径,加不加引号都行。 注意:等号两边 不能 有空格,否则会提示command找不到
- LOG_PATh=log.log
- sleep 1
- # 如果输入格式不对,给出提示!
- tips() {
- echo ""
- echo "WARNING!!!......Tips, please use command: sh sh_web_app_2006_Svr.sh [start|stop|restart|status]. For example: sh sh_web_app_2006_Svr.sh start "
- echo ""
- exit 1
- }
-
-
- # 启动方法
- start() {
- # 重新获取一下pid,因为其它操作如stop会导致pid的状态更新
- pid=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'`
- # -z 表示如果$pid为空时执行
- if [ -z $pid ]; then
- nohup python3 -u $APP_NAME > log.log 2>&1 &
- pid=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'`
- echo ""
- echo "Service ${APP_NAME} is starting! pid=${pid}"
- # echo "........................Here is the log.............................."
- # echo "....................................................................."
- # tail -f $LOG_PATh
- echo "........................Start successfully!........................."
- else
- echo ""
- echo "Service ${APP_NAME} is already running,it's pid = ${pid}. If necessary, please use command: sh sh_web_app_2006_Svr.sh restart."
- echo ""
- fi
- }
-
- # 停止方法
- stop() {
- # 重新获取一下pid,因为其它操作如start会导致pid的状态更新
- pid=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'`
- # -z 表示如果$pid为空时执行。 注意:每个命令和变量之间一定要前后加空格,否则会提示command找不到
- if [ -z $pid ]; then
- echo ""
- echo "Service ${APP_NAME} is not running! It's not necessary to stop it!"
- echo ""
- else
- kill -9 $pid
- echo ""
- echo "Service stop successfully!pid:${pid} which has been killed forcibly!"
- echo ""
- fi
- }
-
- # 输出运行状态方法
- status() {
- # 重新获取一下pid,因为其它操作如stop、restart、start等会导致pid的状态更新
- pid=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'`
- # -z 表示如果$pid为空时执行。注意:每个命令和变量之间一定要前后加空格,否则会提示command找不到
- if [ -z $pid ];then
- echo ""
- echo "Service ${APP_NAME} is not running!"
- echo ""
- else
- echo ""
- echo "Service ${APP_NAME} is running. It's pid=${pid}"
- echo ""
- fi
- }
-
- # 重启方法
- restart() {
- echo ""
- echo ".............................Restarting.............................."
- echo "....................................................................."
- # 重新获取一下pid,因为其它操作如start会导致pid的状态更新
- pid=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'`
- # -z 表示如果$pid为空时执行。 注意:每个命令和变量之间一定要前后加空格,否则会提示command找不到
- if [ ! -z $pid ]; then
- kill -9 $pid
- fi
- start
- echo "....................Restart successfully!..........................."
- }
-
- # 根据输入参数执行对应方法,不输入则执行tips提示方法
- case "$1" in
- "start")
- start
- ;;
- "stop")
- stop
- ;;
- "status")
- status
- ;;
- "restart")
- restart
- ;;
- *)
- tips
- ;;
- esac
|