注意:
一般情况下,仅需要修改restart.sh里面的JAR_BASE_NAME
nohup.out日志文件会自动备份在当前目录的nohup_back文件夹
如果执行restart.sh的时候提示无权限,执行改命令:chmod +x restart.sh
如果执行sh文件报错:“#!/bin/bash 没有那个文件或目录”,将sh文件打开修改其编码格式为“UTF-8”(未修改前是“UTF-8-BOM”)
脚本流程:
、检查是否存在正在运行的jar,如果不存在就停止脚本
、检查是否存在新的jar,如果不存在则让用户选择是仅重启还是直接结束(如果是仅重启,则不进行备份)
、找出进入最新备份版本号,然后加一,构建最新备份文件名
、强制结束当前运行的jar进程
、备份文件
、修改新jar文件的名称为当前运行文件
、备份日志文件
、清空当前日志文件
、启动jar
、打印日志
文件一:pub_restart.sh,公共文件,该文件放在服务器的固定位置,以供其它分布式jar程序目录中引用
#!/bin/bash
restart_jar() {
echo # 换行
echo "开始更新$JAR_BASE_NAME"
echo # 换行
# 定义JAR_FILE和NEW_FILE