kill号令用于终止指定的过程(terminate a process),是Unix/Linux下过程经管的常用号令。
凡是,我们在须要终止某个或某些过程时,先应用ps/pidof/pstree/top等对象获取过程PID,然后应用kill号令来杀掉该过程。
kill号令的别的一个用处就是向指定的过程或过程组发送旌旗灯号(The command kill sends the specified signal to the specified process or process group),或者断定过程号为PID的过程是否还在。比如,有很多法度都把SIGHUP旌旗灯号作为从头读取设备文件的触发前提。
一 常用参数
格式:kill
格式:kill -TERM
发送SIGTERM旌旗灯号到指定过程,若是过程没有捕获该旌旗灯号,则过程终止(If no signal is specified, the TERM signal is sent. The TERM signal will kill processes which do not catch this signal.)
格式:kill -l
列出所有旌旗灯号名称(Print a list of signal names. These are found in /usr/include/linux/signal.h)。只有第9种旌旗灯号(SIGKILL)才可以无前提终止过程,其他旌旗灯号过程都有权力忽视。下面是常用的旌旗灯号:
HUP 1 终端断线
INT 2 中断(同 Ctrl + C)
QUIT 3 退出(同 Ctrl + )
TERM 15 终止
KILL 9 强迫终止
CONT 18 持续(与STOP相反, fg/bg号令)
STOP 19 暂停(同 Ctrl + Z)
格式:kill -l
显示指定旌旗灯号的数值。
格式:kill -9
格式:kill -KILL
强迫杀掉指定过程,无前提终止指定过程。
格式:kill %
格式:kill -9 %
杀掉指定的任务(应用jobs号令可以列出)
格式:kill -QUIT
格式:kill -3
使得法度正常的退出。
killall号令
killall号令杀死同一过程组内的所有过程。其容许指定要终止的过程的名称,而非PID。
# killall httpd
二、示例
1)先用ps查找过程,然后用kill杀掉。
[root@new55 ~]# ps -ef|grep vim
root 3368 2884 0 16:21 pts/1 00:00:00 vim install.log
root 3370 2822 0 16:21 pts/0 00:00:00 grep vim
[root@new55 ~]# kill 3368
[root@new55 ~]# kill 3368
-bash: kill: (3368) - 没有那个过程