Linux Shell脚本实现根据进程名杀死进程

怀念windows下的任务管理器啊,有啥看的顺眼的程序鼠标点几下就能将其干掉。

今天在用Firefox浏览器浏览网页时,界面瞬间卡住了,什么都不能点,测试了下,只有切换到命令行界面(Ctrl+Alt+F1)才有反应,切回文本界面Ctrl+Alt+F7)后还是卡住的。ps:其他按键的感觉就像是失效一般,很无助的说。。。

游走在命令行界面发呆,正打算强制关机时,突然发现以前写的一个Shell脚本,功能是给出一个进程名,就会把关联进程Id全部kill掉。

Shell脚本源码如下:

#!/bin/sh
#根据进程名杀死进程
if [ $# -lt 1 ]
then
  echo "缺少参数:procedure_name"
  exit 1
fi
 
PROCESS=`ps -ef|grep $1|grep -v grep|grep -v PPID|awk '{ print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done

效果截图:
Shell脚本根据进程名杀死进程

如果觉得上边的代码忒复杂,可以直接使用下面的一句来实现。

ps -ef | grep procedure_name | grep -v grep | awk '{print $2}' | xargs kill -9

参考地址

原文地址:https://www.cnblogs.com/zhangwei595806165/p/4828538.html