您的位置:首页 > 运维架构 > Linux

linux脚本启动停止一个jar

2016-08-15 10:30 225 查看
###########################启动###########################

#!/bin/sh

####定义一个函数在当前文件夹下读取所有jar文件

function read_all_jar()
{

  ###循环for do done

  for file in `ls $1`
  do

    ###如果是文件夹,递归调用此函数
    if [ -d $1"/"$file ] then
      read_all_jar $1"/"$file

    ####是文件,从左边开始删除文件名以及.号,剩余的为jar则输出路径
    elif [ "${file##*.}" = "jar" ] then
      echo $1"/"$file
    fi
  done
}

###虚拟机加载文件使用UTF-8字符集

VM_OPTS="$VM_OPTS -Dfile.encoding=UTF-8"

####调用上面 获取jar列表

JAR_LIST=`read_all_jar /home/app/application_lib/flowSystem/city_yz`

#####将所有jar包添加到CLASSPATH中
for JAR in $JAR_LIST
do
  CLASSPATH=$CLASSPATH:$JAR
done

####配置文件路径 datasource log4j 业务数据配置数据

CFG_FILE_PATH=/home/app/application_config/flowSystem/city_yz
export log_path=/log/app/flowSystem/city_yz

####将配置文件路径添加到CLASSPATH中

CLASSPATH=$CLASSPATH:$CFG_FILE_PATH
echo CLASSPATH=$CLASSPATH

######如果参数大于1个,第一个参数是clean

######执行java 启动DealMain,删除shutDownFile文件,退出脚本

if [ $# > 1 ] ; then
  if [ "$1" = "clean" ] ; then

    ###java -cp(目录和zip/jar文件的类搜索路径)
    "$JAVA_HOME"/bin/java $VM_OPTS -cp $CLASSPATH com.dyan.flowSystem.DealMain rmShutDownFile &
    exit;
  fi
fi

####如果参数小于等于1,启动DealMain

"$JAVA_HOME"/bin/java $VM_OPTS -cp $CLASSPATH com.dyan.flowSystem.DealMain &

###########################停止############################

#!/bin/sh

BUSI_NAME=`pwd|awk -F "/" '{print $(NF-1)}'`
CITY_NAME=`pwd|awk -F "/" '{print $(NF)}'`

ps -ef|grep $BUSI_NAME|grep $CITY_NAME|grep -v grep|awk '{print $2}'|xargs kill -9
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: