linux springboot 启动脚本

简单粗暴的脚本

复制代码
#! /bin/bash
# 获取进程号
pid=`ps aux | grep "java -jar" | grep -v "grep" |awk '{print $2}'`
echo ${pid}

if [[ $pid -gt 0 ]];then
    `kill -9 $pid`
fi

`nohup java -jar boot-nginx.jar > boot-nginx.out  2>&1 &`
复制代码

 

更加全面的重新启动服务

复制代码
#! /bin/bash
# 获取进程号
# grep -v 是反向查找的意思,比如 grep -v grep 就是查找不含有 grep 字段的行
pid_cmd="ps -ef |grep java |grep -v grep |awk '{print \$2}'"
pid=$(eval $pid_cmd)

# 打印进程号
echo $pid
# 判断是否存在进程号
if [[ $pid -gt 0 ]];then
    #  可以理解为操作系统发送一个通知告诉应用主动关闭.
    kill -15 ${pid}
    echo '优雅关闭中 等待5秒钟'
    sleep 5
    pid=$(eval ${pid_cmd})
    if [[ $pid -gt 0 ]];then
        # 是操作系统从内核级别强制杀死一个进程.
        echo '优雅关闭无效,强制关闭中'
        kill -9 $pid
    fi
fi

echo '启动中...'
`nohup java -jar xxx.jar > xxx.out  2>&1 &`
复制代码

 

参考文章

posted @   译林  阅读(246)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示