2013-08-12 54 views
0

我试图设置一个任务来杀死某些服务器进程,当服务器进入一个奇怪的状态时,比如它无法启动一个进程时,但另一个进程会继续运行,因此并非所有的启动向上。这主要是一项开发任务,因此您可以执行jake killall以终止与此项目关联的所有进程。ps aux自动关闭应用程序

我无法搞清楚如何做后得到pidps aux | grep [p]rocess\ name | {HOW DO I GET THE PID NOW?}然后获取ID之后我怎么传递到kill -9 {PID HERE}

回答

2

PID是第二列,所以你可以做

ps aux | grep [p]rocess\ name | awk '{print $2}' 

总之,

my_pid=$(ps aux | grep [p]rocess\ name | awk '{print $2}') 
kill -9 $my_pid 
2

你也可以你killall <program>pkill <program>pgrep <program>

+0

我试过了,但是有很多进程使用相同的程序(节点)。 AFAIK,我需要进程名称,而不是程序名称。 –