kill 默认信号term与-9有什么区别,捕获是什么意思?trem不能杀死什么样的进程?

百科上的解释:kill命令是通过向进程发送指定的信号来结束进程的。如果没有指定发送信号,那么默认值为TERM信号。TERM信号将终止所有不能捕获该信号的进程。至于那些可以捕获该信号的进程可能就需要使用kill(9)信号了,该信号是不能被捕捉的。

term信号终止信号,但是程序需捕捉到信号才可以,然后退出进程。人性化一点,就是自愿接受信号。至于kill -9,你不想收,我就强制搞定你。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-22
kill命令格式:
kill -Signal pid
pid是进程号,可以用 ps 命令查出
signal是发送给进程的信号,TERM(或数字9)表示“无条件终止”

下面是一个例子
$ whoami
root
$ ps auxw | grep vi #查询有没有运行vi程序
fenggz 13118 0.0 0.0 4140 1044 pts/1 S+ 05:33 0:00 vi
root 13120 0.0 0.0 4836 640 pts/0 S+ 05:33 0:00 grep vi
#答案:有运行,进程号13118

$ kill -9 13118 #把vi杀掉(无条件终止)

$ ps auxw | grep vi
root 13122 0.0 0.0 4404 640 pts/0 S+ 05:33 0:00 grep vi
#没有vi了...
$
追问

能不能直接说出term和-9的最大区别

本回答被网友采纳
第2个回答  2017-01-14
多数人可能会回答 kill -9 pid,这是一种在多数情况下正确的做法。不过本文打算阐述使用kill -9带来的一些问题,并给出另一种标准的kill方式。标准中断信号在Linux信号机制中,存在多种进程中断信号(Linux信号列表 )。