首先说一下kill命令,它是通过pid来杀死进程,要得到某个进程的pid,我们可以使用ps命令,默认情况下,kill命令发送给进程的终止信号是15,但是有些进程不会理这个信号,这样的话,可以用9信号来强制杀死,信号9是不会被忽略的强制性执行信号。
而killall和pkill都是使用命令名来终止进程的有效手段,它们不同于kill通过pid来杀死进程的方式,它可以理解为成批成批的杀死进程,当然这么做的危险性也相对提高了不少。当然它们也可以给进程发送相应的终止信号。
比如我们要杀死apache的相关进程,我们可以使用killall apache即可杀死所有apache相关的进程,比较方便,不过它有可能会误删程序。
下面是常用的信号的数字及其含义:
1 表示从终端上发出的结束信号
2 表示从键盘上发出的终端信号(即Ctrl+c)
3 表示从键盘上发出的退出信号(即Ctrl+\)
8 表示浮点异常,比如被0除
9 表示结束接受信号的进程,也就是强行杀死进程
15 kill命令默认的终止信号
17 子进程终止或结束的信号
19 从键盘来执行的信号
原文:http://blog.csdn.net/xinguimeng/article/details/43883681