centos7 脚本启动更新java

添加restart.sh脚本

#!/bin/bash
 
# 文件路径
fileDir=/project/application/backend
# 文件夹路径
logDir=/project/application/backend/log
 
# 文件名
fileName=dome-test.jar
# 当前文件最后编辑时间戳
initTime=`stat -c %Y $fileDir/$fileName`
# 是否是第一次进入
is_first=true
while true
do
  # 项目运行进程pid
  pid=`ps -ef|grep dome-test|grep -v grep|cut -c 9-15`
  # 判断是否是第一次进入,第一次进入判断是否已经运行,正在运行停止进程
  if [ $is_first == "true" ];then
    for id in $pid
    do
      kill -9 "$id"
    done
    is_first=false
    # 开始运行,自动创建spring.log写入信息
    nohup java -jar $fileDir/$fileName > $logDir/spring.log 2>&1 &
  else
    # 获取更新的文件时间
    changeTime=`stat -c %Y $fileDir/$fileName`
    # 时间不相等,终止原来的进程,运行新的jar包
    if [ $changeTime -ne $initTime ];then
      for id in $pid
      do
        kill -9 "$id"
      done
      initTime=$changeTime
      nohup java -jar $fileDir/$fileName > $logDir/spring.log 2>&1 &
    fi
  fi
sleep 5
done

你可能感兴趣的:(java,开发语言,后端)