Linux ps -ef 排除当前进程(kill当前Tomcat进程)

在Linux 中,我们经常使用“ps -ef|grep tomcat” 查看进程,如下图是我操作的服务器上使用该命令后查看的结果:

Linux ps -ef 排除当前进程(kill当前Tomcat进程)


可以看到,除了3个紫色的tomcat外,还会有一个该命令的进程。

如果想排除掉那个红色框的当前进程,可以在原来命令后面增加一段参数过滤,如下:

ps -ef|grep tomcat|grep -v grep


只所以这样做,是因为我个人有个需求:写一个sh脚本放在tomcat/bin目录下,kill掉当前tomcat的进程。

编写 kill.sh 脚本,并将该脚本放在 tomcat/bin 目录下,内容如下:

#!/bin/sh
TOM_HOME=$(cd `dirname $0`;cd ..;pwd)
ps -ef|grep $TOM_HOME|grep -v grep|grep -v kill
if [ $? -eq 0 ];then
	kill -9 `ps -ef|grep $TOM_HOME|grep -v grep|grep -v kill|awk '{print $2}'`
else
	echo $TOM_HOME' No Found Process'
fi


使用命令 chmod +x kill.sh 为脚本授可执行权限。







上一篇:web.config中配置字符串中特殊字符的处理


下一篇:linux下查看系统进程占用的句柄数