查找进程的pid并杀死后重启服务——shell简易版

本文介绍了一种通过shell脚本批量获取特定进程ID并进行批量杀死操作的方法,并展示了如何重启指定的服务。此方法适用于需要频繁操作多个相同类型服务的情况。
#!/bin/bash
#获取XXX项目进程ID
SERVICE_NAME="statisticsservice-0.0.1-SNAPSHOT.jar"
service_pid=`ps -ef | grep $SERVICE_NAME | grep -v grep | awk '{print $2}'`


echo "进程ID为:$service_pid"




#杀进程
echo "kill service..."
for id in $service_pid
do
sudo -u lyy    kill -9 $id 
done


echo "$service_pid已杀死..." 


echo "重启中..." 
#./startstatistics.sh


sudo -u  lyy -b  java -jar $SERVICE_NAME -Xmx4096m --spring.profiles.active=test >/dev/null 2>&1 &

记录下,方便以后用

chmod 777 sudoers

注意,如果你是使用非root用户去执行sudo 命令是需要输入密码的。要解决这个问题就要修改/etc/sudoers

chmod 440 sudoers

defaults 要配置下要不找不到java命令

 

注意:.sh文件要和jar在一个目录中。要不 java -jar的时候会的不到jar文件!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值