@breakerthb
2017-03-23T06:52:39.000000Z
字数 617
阅读 1386
Linux
Shell
这个命令用于发送信号来结束进程。如果一个进程没有响应杀死命令,这也许就需要强制杀死,使用-9参数来执行。注意,使用强制杀死的时候一定要小心,因为进程没有时机清理现场,也许写入文件没有完成。
如果我们不知道进程PID或者打算用名字杀死进程时候,killall就能派上用场。
kill <pid>
kill -9<pid>
killall -9 杀死所有拥有同样名字的进程
如果你使用kill,你需要知道进程ID号。pkill是类似的命令,但使用模式匹配,如进程名,进程拥有者等。
pkill <进程名>
$ ps -ef | grep name
$ kill -9 XXXX
或
$ pgrep -f iostat | xargs kill -9
$ killall [processname]
结束该程序名的全部进程
1 SIGHUP 启动被终止的进程
2 SIGINT 相当于[Ctrl]-C
9 SIGKILL 强制中断一个进程
15 SIGTERM 正常结束
17 SIGSTOP 相当于[Ctrl]-Z
查看所有signal:
$ kill -l
查看某signal的signal_number:
$ kill -l SIGQUIT
传signal与传%jobnumber不同,通过向进程发消息完成
$ kill -signal_number PID
$ kill -2 PID
杀死某个程序的所有进程:
$ pgrep -f iostat | xargs kill -9