###########################启动###########################

#!/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

linux脚本启动停止一个jar的更多相关文章

  1. Linux shell脚本启动 停止 重启jar包

    最近做的微服务jar包想弄在持续集成中自动化部署,所以首先得有一个操作jar包的脚本 只需将jar文件的路径替换到APP_NAME的值就可以了,其他不用改 注意:window编辑的shell文件,通过 ...

  2. linux如何启动/停止/重启MySQL

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start2.使用 mysqld 脚本启动:/etc/inint.d/mysqld star ...

  3. Linux编辑启动停止重启springboot jar包脚本

    springboot的配置文件中,配置文件的名字都有各自的意义跟用途 dev 开发环境 prod 生产环境(默认) test 测试环境 加载指定配置文件 --spring.profiles.activ ...

  4. 脚本 启动/停止 jar包服务

    windows (.bat): @set port=8692 @echo %port% for /f "tokens=5" %%i in ('netstat -aon ^| fin ...

  5. Linux下启动停止查看杀死Tomcat进程

    文章来自:http://www.linuxidc.com/Linux/2011-06/37180.htm 启动 一般是执行tomcat/bin/startup.sh,sh tomcat/bin/sta ...

  6. linux脚本启动应用

    手动输入一些命令,启动任务会很麻烦.可以写个start.sh脚本,去执行. #!bin/sh pid=`ps -ef|grep -v grep|grep ****-1.0-SNAPSHOT.jar|a ...

  7. Linux下启动,停止,重启Nginx、Mysql、PHP

    LINUX启动Nginx的命令: 一.查询是否启动 [root@jiang php-fpm.d]# ps -ef | grep nginx root 25225 1 0 19:26 ? 00:00:0 ...

  8. 脚本启动SpringBoot(jar)

    #!/bin/sh RESOURCE_NAME=springbsit-api.jar tpid=`ps -ef|grep $RESOURCE_NAME|grep -v grep|grep -v kil ...

  9. andriod and linux kernel启动流程

    虽然这里的Arm Linux kernel前面加上了Android,但实际上还是和普遍Arm linux kernel启动的过程一样的,这里只是结合一下Android的Makefile,讲一下boot ...

随机推荐

  1. jdk1.8.0_45源码解读——HashSet的实现

    jdk1.8.0_45源码解读——HashSet的实现 一.HashSet概述 HashSet实现Set接口,由哈希表(实际上是一个HashMap实例)支持.主要具有以下的特点: 不保证set的迭代顺 ...

  2. jquery(入门篇)无缝滚动

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  3. 内核早期内存分配器:memblock

    内核早期内存分配器:memblockLinux内核使用伙伴系统管理内存,那么在伙伴系统工作前,如何管理内存?答案是memblock.memblock在系统启动阶段进行简单的内存管理,记录物理内存的使用 ...

  4. nginx 反向代理Apache

    2014年1月13日 18:15:25 同一个域名下,不同uri走不同的应用(不同的web根目录) 实现方式: Apache分别监听两个端口,对应不同的应用 nginx监听80端口,利用locatio ...

  5. selenium玩转svg操作

    今天写脚本发现页面有svg结构,里面的元素无法定位,查找很多资料,然后就记录下来 初步尝试直接在页面中获取svg中包含元素的xpath,直接利用selenium方法访问,无法捕获到相关元素信息. SV ...

  6. ecplise里的run as里只有run configurations是怎么回事?

    一.没有main方法 二.main方法所在的类不是在与文件名同名的类中

  7. python小记

    最近有匹骚猪用微信骚扰我,我很是气愤, 自学一波脚本: 学习目的:用脚本回击回去,通过py写一个脚本,一次性给别人发n条消息: mac上自学python: brew install python3(自 ...

  8. [转] caffe视觉层Vision Layers 及参数

    视觉层包括Convolution, Pooling, Local Response Normalization (LRN), im2col等层. 1.Convolution层: 就是卷积层,是卷积神经 ...

  9. 【PAT】1051 Pop Sequence (25)(25 分)

    Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, ..., N and p ...

  10. https协议通信过程

    https协议通信过程 我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取.所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议. HTTPS简介 HTTPS其实是有两部分组 ...