Linux命令之kill(18)
2022-11-08 本文已影响0人
3d0829501918
发送指定的信号到相应进程。 不指定型号将发送SIGTERM(15)终止指定进程。
如果无法终止该程序可用"-KILL"参数,其发送的信号为SIGKILL(9) 将强制结束进程,使用ps命令可以查看进程号
1、功能说明
用于结束进程
2、语法格式
kill [选项][进程号]
3、选项解释
-l 如果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a 处理当前进程时,不限制命令名和进程号的对应关系
-p 指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s 指定发送信号
-u 指定用户
4、参考实例
- 列出系统支持的全部信号列表
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
- 结束某个指定的进程
kill 8888
8888 为进程号PID,可通过ps -ef | grep 获取对应进程的PID
- 强制结束某个指定的进程
kill -9 8888
以下命令都一样效果
kill -s SIGKILL 8888
kill -s KILL 8888
- 终止作业标识符为1的作业
kill -9 %1
- 发送停止信号
kill -s STOP 8888
- 发送继续信号
kill -s CONT 8888
5、部分信号说明
HUP 1 终端挂断
INT 2 中断(同 Ctrl + C)
QUIT 3 退出(同 Ctrl + \)
KILL 9 强制终止
TERM 15 终止
CONT 18 继续(与STOP相反,fg/bg命令)
STOP 19 暂停(同 Ctrl + Z)
6、拓展命令
通过进程名终止进程用 killall
-u 终止指定用户的进程
-w 等待所有被终止的进程关闭
-v 报告信号是否发送成功
-i 在终止进程前询问是否确认
-r 使用正则表达式匹配要终止的进程名称
-l 列出所有已知的信号名
eg:终止nginx服务进程,服务名是nginx
killall nginx
终止xiaonong用户下所属的nginx进程
killall -u xiaonong nginx