kill 与 pkill

柳三千

文章最后更新时间:2025年06月13日

KILL基本格式

# kill [信号] PID(进程号)
yum -y install psmisc

[root@localhost ~]# pstree -p  | grep nginx
           |-nginx(8539)---nginx(8540)
           
# 强制杀掉一个进程
[root@localhost ~]# kill -9 8539
[root@localhost ~]# pstree -p  | grep nginx
           |-nginx(8540)
[root@localhost ~]# kill -9 8540
# kill [信号] 进程名
[root@localhost ~]# pstree -p | grep nginx
           |-nginx(8623)---nginx(8624)
           
[root@localhost ~]# ps aux | grep nginx
root       8623  0.0  0.1  46088  1164 ?        Ss   16:44   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx      8624  0.0  0.1  46464  1920 ?        S    16:44   0:00 nginx: worker process
root       8631  0.0  0.0 112812   980 pts/0    R+   16:45   0:00 grep --color=auto nginx

[root@localhost ~]# killall -9 nginx
[root@localhost ~]# ps aux | grep nginx
root       8634  0.0  0.0 112812   976 pts/0    S+   16:45   0:00 grep --color=auto nginx
# 查看进程信号
[root@localhost ~]# kill -l
 1) SIGHUP     2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP
 6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL    10) SIGUSR1
11) SIGSEGV    12) SIGUSR2    13) SIGPIPE    14) SIGALRM    15) SIGTERM
16) SIGSTKFLT    17) SIGCHLD    18) SIGCONT    19) SIGSTOP    20) SIGTSTP
21) SIGTTIN    22) SIGTTOU    23) SIGURG    24) SIGXCPU    25) SIGXFSZ
26) SIGVTALRM    27) SIGPROF    28) SIGWINCH    29) SIGIO    30) SIGPWR
31) SIGSYS    34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3
38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8
43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13
48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12
53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7
58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2
63) SIGRTMAX-1    64) SIGRTMAX

PKILL基本格式

# pkill [信号] 进程名
-t  终端号   根据终端号踢出用户

[root@localhost ~]# ps aux | grep nginx
root       8636  0.0  0.1  46088  1160 ?        Ss   16:47   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx      8637  0.0  0.1  46464  1916 ?        S    16:47   0:00 nginx: worker process
root       8639  0.0  0.0 112812   980 pts/0    R+   16:47   0:00 grep --color=auto nginx
[root@localhost ~]# pkill -9 nginx
[root@localhost ~]# ps aux | grep nginx
root       8642  0.0  0.0 112812   980 pts/0    S+   16:47   0:00 grep --color=auto nginx


# 踢掉其他在线用户
[root@localhost ~]# w
 16:50:26 up  7:37,  2 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.140.1    09:14    2.00s  0.09s  0.00s w
root     pts/1    192.168.140.1    16:50    6.00s  0.00s  0.00s -bash

[root@localhost ~]# pkill -9 -t pts/1
[root@localhost ~]# w
 16:50:52 up  7:37,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.140.1    09:14    4.00s  0.09s  0.00s w

总结:

  • pkill 支持通过终端号(-t 参数)踢掉在线用户,而 kill 主要用于终止进程。
  • kill 需指定进程 PID 或通过 killall 按进程名终止,pkill 直接按进程名或条件匹配进程并终止。
文章版权声明:除非注明,否则均为柳三千运维录原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码