zoukankan      html  css  js  c++  java
  • shell之startup

    #!/bin/sh
    #
    #
    #
    #
    
    
    PROJECT=$1
    APPWORK_DIR=~/apps/$PROJECT
    LOGPATH=~/logs/$1
    LOGFILE=~/logs/$PROJECT/${PROJECT}.log
    STARTUPLOG=~/logs/$1/startup.log
    JAVA_OPTIS=" -Xms40m -Xmx512m -Xss256k -Dspring.profiles.active=test "
    JAR=$APPWORK_DIR/$1.jar
    #JAVA_OPTIS=" -Xms1024m -Xmx1024m -Xss256k -Dspring.profiles.active=test "
    DEPLOY_CONFIG=$APPWORK_DIR/deploy.conf
    PIDFILE=$APPWORK_DIR/$1.pid
    
    if [ ! -f $JAR ];then
       echo "$JAR 不存在,正在搜索WAR包..."
       JAR=$APPWORK_DIR/$PROJECT.war
    fi
    
    if [ ! -f $JAR ]; then
       echo "$JAR 不存在,请确认是否编译成功,并成功布署."
       exit 0;
    fi
    
    if [ -f $DEPLOY_CONFIG ]; then
       echo "读取应用自定义布署配置文件- $DEPLOY_CONFIG "
       source $DEPLOY_CONFIG
    fi
    
    #初始化日志目录
    if [ ! -d $LOGPATH ]; then
       echo "正在创建日志目录${LOGPATH}"
       mkdir -p $LOGPATH
    fi
    
    
    echo "####################################"
    echo "JAVA_HOME=$JAVA_HOME"
    echo "JAVA_OPTIS=$JAVA_OPTIS"
    echo "ADD_VM_ARGS=$ADD_VM_ARGS"
    echo "STARTUP_ARGS=$STARTUP_ARGS"
    echo "PIDFILE=$PIDFILE"
    echo "ApplicationFile=$JAR"
    echo "SPRING_CONFIG_URI=$SPRING_CONFIG_URI"
    echo "param1=$1"
    echo "####################################"
    echo ""
    
    echo "-------------------------------------------------------------------------"
    echo "HANGUDA Startup Script for Linux"
    echo "-------------------------------------------------------------------------"
    
    
    echo "正在执行 java -jar $JAVA_OPTIS $ADD_VM_ARGS $JAR $STARTUP_ARGS >$STARTUPLOG &"        
    nohup java -jar $JAVA_OPTIS $ADD_VM_ARGS $JAR $STARTUP_ARGS >$STARTUPLOG &
    RESULT=$?
    PID=$!
    if [ $RESULT = 0 ]; then
    #JAVA_OPTIS=" -Xms1024m -Xmx1024m -Xss256k -Dspring.profiles.active=test "
    DEPLOY_CONFIG=$APPWORK_DIR/deploy.conf
    PIDFILE=$APPWORK_DIR/$1.pid
    
    if [ ! -f $JAR ];then
       echo "$JAR 不存在,正在搜索WAR包..."
       JAR=$APPWORK_DIR/$PROJECT.war
    fi
    
    if [ ! -f $JAR ]; then
       echo "$JAR 不存在,请确认是否编译成功,并成功布署."
       exit 0;
    fi
    
    if [ -f $DEPLOY_CONFIG ]; then
       echo "读取应用自定义布署配置文件- $DEPLOY_CONFIG "
       source $DEPLOY_CONFIG
    fi
    
    #初始化日志目录
    if [ ! -d $LOGPATH ]; then
       echo "正在创建日志目录${LOGPATH}"
       mkdir -p $LOGPATH
    fi
    
    
    echo "####################################"
    echo "JAVA_HOME=$JAVA_HOME"
    echo "JAVA_OPTIS=$JAVA_OPTIS"
    echo "ADD_VM_ARGS=$ADD_VM_ARGS"
    echo "STARTUP_ARGS=$STARTUP_ARGS"
    echo "PIDFILE=$PIDFILE"
    echo "ApplicationFile=$JAR"
    echo "SPRING_CONFIG_URI=$SPRING_CONFIG_URI"
    echo "param1=$1"
    echo "####################################"
    echo ""
    
    echo "-------------------------------------------------------------------------"
    echo "HANGUDA Startup Script for Linux"
    echo "-------------------------------------------------------------------------"
    
    
    echo "正在执行 java -jar $JAVA_OPTIS $ADD_VM_ARGS $JAR $STARTUP_ARGS >$STARTUPLOG &"        
    nohup java -jar $JAVA_OPTIS $ADD_VM_ARGS $JAR $STARTUP_ARGS >$STARTUPLOG &
    RESULT=$?
    PID=$!
    if [ $RESULT = 0 ]; then
        echo  "start $JAR successed PID=$PID ."
        echo  $PID >$PIDFILE
        sleep 3
        tail -300 $STARTUPLOG
        tail -300f $LOGFILE
    else
        echo "start failed..."
    fi
    
    exit 0
    View Code
  • 相关阅读:
    (转载)Linux系统中分离线程的使用
    (转载)Vim的几种模式介绍
    (转载)Linux下检查内存泄漏、系统性能的系列工具
    (转载)Linux 僵尸进程与孤儿进程
    (转载)valgrind,好东西,一般人我不告诉他~~ 选项
    (转载)Linux进程组、作业、会话的理解
    Open a file, and then readin a file tcl tk
    save vars and arrays
    itcl class example
    constructor with args tcl tk
  • 原文地址:https://www.cnblogs.com/justuntil/p/10941974.html
Copyright © 2011-2022 走看看