按照名字杀死进程的四种方法


太长不看版:

匹配方式 模糊匹配 精确匹配
匹配命令 pgrep pidof
kill命令 kill -9 $(pgrep <proc-name>) kill -9 $(pidof <proc-name>)
组合命令 pkill -9 <proc-name> killall -9 <proc-name>

以下是正文

按照名字杀死进程的四种方法

根据名字杀死进程的需求来自于同时杀死一组进程,如MPI程序的进程。杀死单个进程只需要top或者ps命令找到进程然后直接kill -9 <pid>就可以了。

要使用kill命令杀死进程,首先需要找出进程的pid。根据进程名称查找pid,有精确匹配和模糊匹配两种方式:

  • pidof 精确匹配找出进程pid
  • pgrep 模糊匹配找出进程pid

得到精确进程名的方法参照杀死单个进程的办法,使用top或者ps命令。

拿到一组进程pid之后可以使用kill命令批量杀死:

  • kill -9 $(pidof <proc-name>) 精确匹配杀死进程
  • kill -9 $(pgrep <proc-name>) 模糊匹配杀死进程

有两个命令,分别相当于killpidof或者pgrep命令的组合:

  • killall -9 <proc-name> 相当于pidof+kill
  • pkill -9 <proc-name> 相当于pgrep+kill

这里用到的-9实际上指的是发送SIGKILL信号给进程,这是一种比较强力的结束信号,默认的是-15也就是SIGTERM信号。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM