linux编写脚本启动与停止jar服务

编写如下脚本,定义jar包路径及集合,循环开启脚本并逐一指定端口
关闭时亦循环遍历jar集合,根据jar包文件名获得对应的pid并kill -9关闭进程

#!/bin/sh

# jar包数组
JARS=(op1.jar op2.jar op3.jar op4.jar)
# jar包路径
JAR_PATH='/opt/op'

start() {
  local JAR_NAME=
  local PORT=
  for((i=0;i<${#JARS[@]};i++));
  do
    JAR_NAME=${JARS[$i]}
    PORT=$((8080+$i))
	exec nohup java -jar $JAR_PATH/$JAR_NAME --server.port=$PORT &
	echo "$JAR_NAME已启动,运行在端口$PORT"
  done
}

stop() {
  local JAR_NAME=
  for((i=0;i<${#JARS[@]};i++));
  do
    JAR_NAME=${JARS[$i]}
	ps -ef | grep $JAR_NAME | grep -v grep | awk '{print $2}' | xargs kill -9
	echo "运行在端口$PORT的$JAR_NAME已停止"
  done
}

case "$1" in
  start)
    start
  ;;
  stop)
    stop
  ;;
esac	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值