如何使用'kill'结合'grep'来杀死进程

时间:2016-04-21 13:48:56

标签: bash process grep kill ps

我想使用简单的命令杀死进程/脚本。目前我做了以下

ps -ef | grep myscriptname
kill 123456

但有没有办法可以将2命令组合在一起,所以我不需要查看并手动编写pid,就像这样kill grep myscriptname

6 个答案:

答案 0 :(得分:11)

您想要pkill

pkill myscriptname

在某些系统上有一个名为killall的类似工具,但要小心,因为在Solaris上确实会杀死所有内容!

请注意,您还可以使用pgrep来替换ps | grep管道:

pgrep myscriptname

它会为您打印PID,而不是其他任何内容。

答案 1 :(得分:4)

另一种方法是使用pidof命令:

kill $(pidof processname)

答案 2 :(得分:1)

另一个替代方案,pgrep xargs

ps aux | pgrep gitlab | xargs kill

答案 3 :(得分:0)

您可以尝试这个简单的技巧 pkill -f "my_sript_filename"

答案 4 :(得分:0)

我使用 kill $(pgrep <program name>),它有效。

答案 5 :(得分:-1)

另一种选择是管道xargs命令:

ps -ef | grep myscriptname | xargs kill

http://man7.org/linux/man-pages/man1/xargs.1.html