#!/bin/bash # 应用程序的名字 APP_NAME="wecom" BASE_PATH="/home/cy/soft/wecom/" # JAR文件的新版本路径 JAR_PATH="${BASE_PATH}${APP_NAME}.jar" # PID文件的路径 PID_PATH="${BASE_PATH}${APP_NAME}.pid" # 上传jar文件的位置 JAR_BAK_PATH="${BASE_PATH}${APP_NAME}-new.jar" #备份文件目录名 DATE_DIRECTORY_NAME=$(date +"%Y-%m-%d") #备份文件的名字 DATE_FILE_NAME=$(date +"%H:%M:%S") #备份文件目录 DATE_DIRECTORY_PATH="${BASE_PATH}bak/${DATE_DIRECTORY_NAME}" #创建备份目录 if [ ! -d "$DATE_DIRECTORY_PATH" ]; then mkdir -p "$DATE_DIRECTORY_PATH" fi # 停止正在运行的应用程序 if [ -f "$PID_PATH" ]; then PID=$(cat "$PID_PATH") kill -15 $PID if kill -0 $PID > /dev/null 2>&1; then echo "应用程序没有正确停止,开始强制终止。" kill -9 $PID fi fi # 移动旧的JAR文件 mv "$JAR_PATH" "${DATE_DIRECTORY_PATH}/${DATE_FILE_NAME}.jar.orignal" # 复制新的JAR文件到部署目录 mv "$JAR_BAK_PATH" "$JAR_PATH" # 启动应用程序 nohup java -jar "${JAR_PATH}" & echo $! > "$PID_PATH"
标签:脚本,NAME,JAR,jar,centos7.9,DATE,PATH,PID From: https://www.cnblogs.com/Sigmund-Freud-01/p/18216521