zoukankan      html  css  js  c++  java
  • 贡献一个springboot项目linux shell启动脚本

    !/bin/bash

    这里可替换为你自己的执行程序,其他代码无需更改

    APP_NAME=$1
    JAR_NAME=/usr/local/app/${APP_NAME}
    JVM="-server -Xms2048m -Xmx2048m -XX:PermSize=1024M -XX:MaxNewSize=512m -XX:MaxPermSize=2048m -Djava.awt.headless=true -XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled"
    APPFILE_PATH="-Dspring.config.location=/usr/local/app/${APP_NAME}.yml

    使用说明,用来提示输入参数

    usage() {
    echo "Usage: sh 执行脚本.sh app_name [start|stop|restart|status]"
    exit 1
    }

    检查程序是否在运行

    is_exist(){
    pid=ps -ef|grep java |grep $APP_NAME|grep -v grep|awk '{print $2}'
    echo $pid

    如果不存在返回1,存在返回0

    if [ -z "${pid}" ]; then
    return 1
    else
    return 0
    fi
    }

    启动方法

    start(){
    is_exist
    if [ $? -eq "0" ]; then
    echo "${APP_NAME} is already running. pid=${pid} ."
    else
    nohup java $JVM -jar $APPFILE_PATH $JAR_NAME > ${APP_NAME}.log 2>&1 &
    fi
    }

    停止方法

    stop(){
    is_exist
    if [ $? -eq "0" ]; then
    kill -9 $pid
    else
    echo "${APP_NAME} is not running"
    fi
    }

    输出运行状态

    status(){
    is_exist
    if [ $? -eq "0" ]; then
    echo "${APP_NAME} is running. Pid is ${pid}"
    else
    echo "${APP_NAME} is NOT running."
    fi
    }

    重启

    restart(){
    stop
    start
    }

    根据输入参数,选择执行对应方法,不输入则执行使用说明

    case "$2" in
    "start")
    start
    ;;
    "stop")
    stop
    ;;
    "status")
    status
    ;;
    "restart")
    restart
    ;;
    *)
    usage
    ;;
    esac

  • 相关阅读:
    第九周学习报告
    人月神话阅读笔记02
    数组 分步 详细
    第八周学习总结
    课堂练习
    学习进度报告09
    用户模板和用户场景
    学习进度报告08
    课堂随笔
    学习进度报告07
  • 原文地址:https://www.cnblogs.com/codhome/p/13621166.html
Copyright © 2011-2022 走看看