#! /bin/sh ### BEGIN INIT INFO # Description: 重启部署脚本 #执行教程: ### END INIT INFO # 主目录 master_home_prefix=/server/ocr/java # research 安装目录 ocr_java_prefix=/server/ocr/java/source/ocr-java # maven 目录 maven_prefix=/usr/local/apache-maven-3.8.5 currentTimeStamp='' branch=dev # JVM参数 JVM_OPTS="-Duser.timezone=Asia/Shanghai" #jar 运行日志打印 LOG_PATH=/server/ocr/java/nohup.out #jar 运行pid进程 JAVAPID=/server/ocr/java/ocr-java.pid function getTime() { current=`date "+%Y%m%d%H%M%S"` timeStamp=`date -d "$current" +%s` #将current转换为时间戳,精确到毫秒 currentTimeStamp=$current #currentTimeStamp=$((timeStamp*1000+`date "+%N"`/1000000)) return $current } case "$1" in start) getTime echo "start orc-java service" echo "====================================>>>>>>>>" #进入项目目录 cd $ocr_java_prefix #拉取代码 git checkout $dev git pull echo "拉取最新代码" echo "====================================>>>>>>>>" #maven 打包 $maven_prefix/bin/mvn package echo "正在maven打包" echo "====================================>>>>>>>>" # 判断旧的jar包是否存在 #! if [ -f "$master_home_prefix/orc-java.jar" ]; then echo "备份上一次的jar包" echo "====================================>>>>>>>>" #存在,做备份 mv $master_home_prefix/orc-java.jar $master_home_prefix/orc-java-$currentTimeStamp.jar fi #移动jar包 echo "复制新的jar包至 $master_home_prefix/orc-java.jar" echo "====================================>>>>>>>>" mv $ocr_java_prefix/jeecg-boot-module-system/target/orc-java.jar $master_home_prefix/orc-java.jar #启动jar包 echo "启动jar包" echo "====================================>>>>>>>>" nohup java -jar $JVM_OPTS $master_home_prefix/orc-java.jar > $LOG_PATH 2>&1 & echo $! > $JAVAPID & #追踪打印日志 tail -f $LOG_PATH ;; stop) echo "stop orc-java service" echo "====================================>>>>>>>>" echo "停止jar进程 `cat $JAVAPID`" echo "====================================>>>>>>>>" kill -9 `cat $JAVAPID` echo "====================================>>>>>>>>" echo "已停止" ;; *) $0 stop echo "====================================>>>>>>>>" $0 start echo "====================================>>>>>>>>" ;; esac