CentOS7 编译 Jar 包后台启动并跟踪日志脚本

本文介绍了如何在CentOS7系统中,通过nohup命令后台启动Java Jar包,并将日志重定向到指定文件。同时,提供了脚本来动态跟踪日志,并展示了在启动前如何检查并杀掉已有进程。文中详细解释了使用grep、awk、xargs等工具的组合使用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通常启动:

java -jar /opt/ruoyi-admin.jar

这样子,是前台启动,直接在屏幕输出启动日志,方便开发调试布署查看异常。

但问题是,一旦 ctrl + c 关闭,或控制台退出,进程也随之关闭。

后台启动:

nohup java -jar /opt/ruoyi-admin.jar >> /opt/ruoyi-nohup.out 2>&1 &

用 nohup ...... & 启动,会以后台进程启动,即便控制台关才,进程仍然在后台运行,并把原来在屏幕输出的日志,输出到指定的日志文件中。

启动后,直接打印了进程ID,便退出了,可以使用下面命令动态跟踪查看日志:

tail -300f /opt/ruoyi-nohup.out

编写脚本完成后台启动与动态日志查看跟踪异常:

[root@base22 html]# vi /opt/ruoyi.sh


# /bin/bash

# 后台运行 jar 包,并将日志写到 nohup.out 文件
nohup java -jar /opt/ruoyi-admin.jar >> /opt/ruoyi-nohup.out 2>&1 &

echo 'starting ... '

# 动态查看日志文件
tail -300f /opt/ruoyi-nohup.out

设置脚本的可执行权限及软链到可执行搜索路径:

[root@base22 html]# chmod 777 ruoyi.sh

[root@base22 html]# ln -n ruoyi.sh /usr/bin/ruoyi.sh

此时,在任何路径下,都可以随时执行 ruoyi.sh 来后台启动 jar 包,并同步跟踪日志输出了,没问题时,ctrl + c 关闭日志输出,而不是进程。

执行前,需要先查看已存在进程并杀掉,可以按名称或占用端口查杀进程:

[root@base22 html]# ps -ef | grep ruoyi
root      40369      1  0 10:35 pts/1    00:01:13 java -jar /opt/ruoyi-admin.jar
root      56453  41193  0 16:04 pts/1    00:00:00 grep --color=auto ruoyi

[root@base22 html]# ps -aux | grep ruoyi
root      40369  0.3 23.1 3126724 431796 pts/1  Sl   10:35   1:13 java -jar /opt/ruoyi-admin.jar
root      56463  0.0  0.0 112828   984 pts/1    S+   16:04   0:00 grep --color=auto ruoyi

[root@base22 html]# netstat -tulpn | grep 8080
tcp6
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值