linux脚本启动jar包

  • run.sh

    shell 复制代码
    #!/bin/bash
    cd /home/java_projects/yh_oa_api/
    nohup java -jar yh_oa_api.jar --spring.profiles.active=dev --server.port=9023 > /dev/null 2>&1 &
    echo "yh_oa_api.jar run successfully!"
  • stop.sh

    shell 复制代码
    #!/bin/bash
    
    echo "search [yh_oa_api.jar] process ......"
    
    pid=`ps -ef | grep "yh_oa_api.jar" | grep -v grep | awk '{print $2}'`
    
    if [[ pid>0 ]]; then
        echo "Process [ yh_oa_api.jar  ] is runing , PID = $pid ;"
    
        echo "Now Will Kill Process PID = $pid ;"
    
        result=`kill -9 $pid`
    else
        echo "Process [ yh_oa_api.jar ] stop success! ;"
    fi
  • restart.sh

    shell 复制代码
    #!/bin/bash
    source /etc/profile
    
    # 要发布的jar包名称
    NEW_JAR='yh_oa_api.jar'
    
    
    # 停止正在运行的jar包
    pid=`ps -ef|grep $NEW_JAR| grep -v grep| awk '{print $2}'`
    echo "部署前的pid进程 :$pid"
    
    
    # 关闭已经启动的jar进程
    if [ -n "$pid" ]
      then
        kill -9 $pid
    else
        echo "进程没有启动"
    fi
    
    # cd到jar包目录
    cd  /home/java_projects/yh_oa_api
    
    # 启动
    nohup java -agentpath:/tmp/cdbg_java_agent.so -jar  $NEW_JAR --spring.profiles.active=dev --server.port=9023  >/dev/null 2>&1 &
    echo "脚本执行完毕"
    
    pid=`ps -ef|grep $NEW_JAR | grep -v grep | awk '{print $2}'`
    
    # 检验进程是否启动
    if [ -n "$pid" ]
      then
            echo "部署后的pid进程 :$pid"
            echo "启动成功"
    else
        echo "进程没有启动"
    fi
相关推荐
码事漫谈4 小时前
当AI开始“思考”:我们是否真的准备好了?
前端·后端
铁东博客5 小时前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
oak隔壁找我6 小时前
SpringBoot中MyBatis的Mapper的原理
后端
oak隔壁找我6 小时前
Spring Boot 自动配置(Auto-configuration)的核心原理
后端
oak隔壁找我6 小时前
Java的JAR包
后端
GetcharZp6 小时前
告别 TCP 握手延迟!让你的 Go 服务瞬间拥抱 HTTP/3 时代
后端
oak隔壁找我7 小时前
SpringBoot 将项目打包成 Fat JAR(肥包),核心原理
后端
IT_陈寒8 小时前
为什么我的Vite热更新老是重新加载整个页面?
前端·人工智能·后端
还在忙碌的吴小二9 小时前
Harness 最佳实践:Java Spring Boot 项目落地 OpenSpec + Claude Code
java·开发语言·spring boot·后端·spring