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 |
效果截图:
如果觉得上边的代码忒复杂,可以直接使用下面的一句来实现。
ps -ef | grep procedure_name | grep -v grep | awk '{print $2}' | xargs kill -9 |
很不错,学到了哈,感谢分享
如果想一次杀多个线程呢