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 &`
分类:
springboot
标签:
springboot
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义