disconf java 启动 shell

来源:互联网 发布:面试技巧 知乎 编辑:程序博客网 时间:2024/06/07 21:27

1.启动文件: service-restart.sh

#!/bin/sh## java envsource /etc/profileexport JAVA_HOME=/usr/local/jdk1.7.0_75export JRE_HOME=$JAVA_HOME/jreif [ $# != 3 ] ; then echo "USAGE: $0 SERVICE_DIR SERVICE_NAME_PRE DISCONF_ENV" echo " e.g.: $0 /opt/dubbo-test dubbo-goods rd" exit 1; fi SERVICE_DIR=$1SERVICE_NAME_PRE=$2#设置 disconf 信息DISCONF_ENV=$3DISCONF_HOST=192.168.0.11:8080DISCONF_APP=dubboDISCONF_VERSION=1.0.0echo "SERVICE_DIR" $SERVICE_DIRecho "SERVICE_NAME_PRE" $SERVICE_NAME_PREecho "DISCONF_ENV" $DISCONF_ENVecho "DISCONF_HOST" $DISCONF_HOSTecho "DISCONF_APP" $DISCONF_APPecho "DISCONF_VERSION" $DISCONF_VERSIONcd $SERVICE_DIR#        P_ID=`ps -ef | grep -w "$SERVICE_NAME_PRE" | grep -v "grep" | awk '{print $2}'`    P_ID=`jps -ml|grep "$SERVICE_NAME_PRE"|awk '{print $1}'`         if [ "$P_ID" == "" ]; then            echo "=== $SERVICE_NAME process not exists or stop success"        else            echo "=== begin kill $SERVICE_NAME process, pid is:$P_ID"            kill -9 $P_ID       fi    sleep 3    JAR_NAME=`ls -rt *.jar|grep -v 'sources'|tail -1`    echo "START JAR_NAME "$JAR_NAME    nohup $JRE_HOME/bin/java -Xms256m -Xmx512m -jar   -Ddisconf.env=$DISCONF_ENV -Ddisconf.conf_server_host=$DISCONF_HOST -Ddisconf.app=$DISCONF_APP -Ddisconf.version=$DISCONF_VERSION -Ddisconf.user_define_download_dir=.classes -Ddisconf.enable.remote.conf=true          $JAR_NAME >$SERVICE_NAME_PRE.log 2>&1 &    ls *.jar|grep -v $JAR_NAME|xargs rm -rfexit 0

2.例子:
2.1.第一个参数是可执行 jar 文件所在目录
2.2.第二个参数是可执行 jar 文件名称
2.3.第三个参数是环境名称

/opt/service-restart.sh /opt/test-service test-service rd
0 0