首页 > 系统相关 >linux springboot 启动脚本

linux springboot 启动脚本

时间:2023-07-28 17:24:46浏览次数:46  
标签:脚本 gt grep springboot jar pid echo linux java

简单粗暴的脚本

#! /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 &`

 

参考文章

标签:脚本,gt,grep,springboot,jar,pid,echo,linux,java
From: https://www.cnblogs.com/abel-he/p/16500974.html

相关文章

  • linux 定时任务清理数据
    1、查找及删除文件的命令find对应目录-mtime+天数-name"文件名"-execrm-rf{}\;应用命令为:find/fastdfs/storage/store/data/-mtime+10-name"*.*"-execrm-rf{}\;2、编辑脚本vi/fastdfs/storage/deleteScratchFile.sh内如如下:(删除30天前的文件。) ......
  • 鸟哥Linux私房菜学习记录day4
    第九章vim程序编辑器简易执行范例替换 :n1,n2s/word1/word2/g   :1,$s/word1/word2/g(c)(确认)删除:x向后删除一个字符,X向前删除一个字符,nx向后连续删n个字符(n)dd删除(剪切)光标所在的那一行nyy复制光标所在的那n行nG:移动到第n行u恢复前一个操作ctrl+r重做上一个动作.......
  • shell 钉钉告警脚本
    #!/bin/bash#钉钉告警functionsend_notify(){curl'https://oapi.dingtalk.com/robot/send?access_token=xxxx'\-H'Content-Type:application/json'\-d'{"msgtype":"markdown",&......
  • Windows OS 下通过VNC访问Linux OS(可视化界面)
    VNC介绍:VNC(VirtualNetworkConsole),即虚拟网络控制台,它是一款基于UNIX和Linux操作系统的优秀远程控制工具软件,由著名的AT&T的欧洲研究实验室开发,远程控制能力强大,高效实用,并且免费开源。VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器......
  • mysql8.0环境的搭建(Linux)
    1.安装前说明1.1Linux系统及工具的准备。安装并启动好两台虚拟机:CentOS7安装有远程访问centOS系统的工具CentOS6和CentOS7在MySQL的使用中的区别默认防火墙:CentOS6是iptables;CentOS7是firewalld;启动服务的命令:CentOS6是servicemysqldstart;CentOS7是systemctlstart......
  • idea启动springboot 出现找不到符号,但是类是明确存在的
     很多小伙伴应该都遇到过这个问题,依赖没问题,对应的类也存在但是启动的时候就报错(通常这种问题是突然就发生,上一次启动还是好好的)错误原因:一般是由于依赖的子模块进行了修改,没有install到本地仓库执行mvninstall之类的命令就可以了解决办法,mvnclean ->mvninstall......
  • Linux常用指令熟悉
    1、文件系统目录2、相关操作命令帮助手册:help命令、man命令Tab键--自动补全命令;history命令--显示历史记录的相关命令-->方向键切换前后执行过的命令;ls命令--用于显示指定工作目录下的文件结构;cd命令--用于切换当前工作目录;mkdir命令--用于创建目录;touch命令--创建一个......
  • spring-boot 打包 配置、lib、脚本分开 的maven配置
    <profiles><profile><id>dev</id><properties><spring.profiles.active>dev</spring.profiles.active></properties></profile>......
  • linux笔记目录
    摘要这是我学习b站hsp老师的视频做的笔记,然后根据自己的理解重新整理的因为linux的知识大都属于操作类型的,而且有些知识比较散,因此可能整理的不是很好但即便是这样,我也是认证整理了一番,有助于理解linux操作的体系,当使用指令的时候能快速定位到是哪一个指令当然,在今后的使用......
  • 平常工作中常用的linux指令
    目录rsyncscpfindlocategrep-rn"123"pwd显示当前路径rm-rfXXXdu-h显示占用磁盘大小ln软链接whichwhereisrsyncrsync-avp--exclude"*.bin"--exclude"*raw.jpg"/data/[email protected]:/admin/data_1/project/send/scpscp-......