Linux判断服务进程存在,存在则重启,不存在则启动

这篇博客介绍了如何通过Shell脚本来检查并管理Java应用程序。首先,它展示了如何利用`ps`命令获取进程PID来判断app.jar进程是否运行。接着,如果进程存在则执行`kill -9`进行强制停止,然后启动新的Java应用;若进程不存在,则直接启动应用。这个脚本对于自动化部署和故障恢复具有实用价值。
摘要由CSDN通过智能技术生成

1、查看进程pid

通过获取进程pid来判断该进程是否存在

ps -ef | grep app.jar | grep -v grep | awk '{print $2}'、

ps -ef | grep app.jar  打印出包含 app.jar 的所有进程信息(一行一个进程的信息)

grep -v grep  过滤掉包含 grep 字符的行,过滤掉当前的查找进程

awk '{print $2}'  输出第二列的内容;等于0时输出所有内容,大于0时输出指定列的内容;

2、使用

#!/bin/sh

PIDS=`ps -ef | grep app.jar | grep -v grep | awk '{print $2}'`
#不使用 `` 也可以使用 ${}

if [ "$PIDS" != "" ]; then
	kill -9 $PIDS
	nohup java -jar -Dserver.port=8080 app.jar >run.log 2>&1&
	echo "app-api restart!"
else
	nohup java -jar -Dserver.port=8080 app.jar >run.log 2>&1&
	echo "app-api started!"
fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值