Linux 自动关闭某个进程脚本

前言

怕是不少后台开发者经常会有这么两个命令

ps -ef | grep 某某进程名
kill -9 某某进程名

比如,我是一个Java开发者,时常做好一个模块,通过mvn clean package -DskipTests打jar包后,要更新到服务器上测试,总要先经过这两个命令,再删除旧的jar包

懒人模式

后面想起要不做一个脚本吧,让服务器自己找进程名并且关闭

开始第一步,创建一个脚本:

touch end.sh

第二步,通过vim或者vi进入这个新建的文件写命令:

#!/bin/sh
ps -ef | grep 某某jar包名.jar | grep -v grep | awk '{print $2}' | xargs kill -9
rm -f jar包全路径

第一段前面两节不陌生,是查找某个进程,第三节的意思是过滤grep(一般调用前两节命令后显示的有两段数据,过滤的就是第二段无用的数据),第四节的意思是找出进程号,第五节的意思是杀死找出的进程号

结语

这样就是完成了懒人模式,下次更新jar包,直接运行这个命令,再把新的上传到服务器启动起来就好了,我这个人比较懒,我连启动jar包和查看日志的脚本一起写了,附带一下:

#!/bin/bash
nohup java -jar jar包全路径 > 要输出的日志全路径 2>&1 &
tail -f 要输出的日志全路径
Logo

更多推荐