当前位置: 首页 > news >正文

【kill】Centos/Linux 如何杀死那该死的进程?

简介

        系统版本:Centos7.6

        kill 命令发送指定的信号到指定的进程或者进程组。如果该信号没有指定,则发送SIGTERM信号(15),即终止信号。如果SIGTERM信号(15)无法终止,可使用SIGKILL(9)信号尝试结束进程。现在的大多数命令都会内置一个kill函数,用法和上面所描述的非常相似。如果SIG为0,则不发送任何信号,但是仍会执行错误检查。

基础语法

kill [option] <PID> # <PID>为需要终止进程的ID号

PID的五种情况 

PID定义
nn大于0则向对应PID的进程发送信号
0向所有进程都发送信号
-1所有PID大于1的进程都将收到信号
-n这里的n大于1, 在这种情况下,发信号给属于进程组 n 的进程。如果给定一个负的参数,那么信号必须首先声明, 否则它会被当作信号发送出去。
命令名使用该名称调用的所有进程都将收到信号

选项介绍

选项选项说明
-s,--signal指定要发送的信号,可以使用信号名或数字给出,kill命令中的signal请看下面的小节,Linux中的信号详细介绍请查看Linux信号的行为说明。
-l,--list列出可用的信号的名称。此选项具有可选参数,该参数将信号编号 (数字) 转换为信号名称,反之亦然。这可以在 /usr/include/linux/sig‐nal.h 中找到。
-L,--table在表格中列出信号名称。
-a,--all当处理当前进程时,不限制命令名和进程号的对应关系。
-p,--pid只打印命名进程的PID,而不发送信号给相应的进程。
-q,--queue使用 sigqueue(2) 而不是 kill(2),选项后跟随的为一个信号,用整数表示该信号。

基本用法

1、终止进程

> kill 4682
> kill 4682 7492 8810 2314

2、发送指定信号给指定进程

> kill -s 2 4682 # 2为信号SIGINT
> kill -s SIGINT 4682

3、强杀进程或进程组

强杀PID:4682进程
> kill -9 4682强杀PID:4682所在的整个进程组
> kill -9 -4682

4、查看所有可用信号

> kill -l
> kill --list显示信号编号为11的信号名称
> kill -l 11

5、 杀死指定用户所有进程

过滤出username用户的进程,然后强制结束掉它
> kill -9 $(ps -ef | grep username)

注:4682、7492、8810、2314是拟定的一个PID

kill中的信号

 信号的详细介绍请查看信号的行为说明 

 1) SIGHUP      2) SIGINT	    3) SIGQUIT	    4) SIGILL	    5) SIGTRAP6) 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

注意事项

1、使用kill命令结束某一个进程时要确保具有该进程的相应权限,否则可能无法终止该进程。

2、某些进程可能需要多次发送信号才能终止,例如一些守护进程。

3、强制终止进程可能会导致数据丢失、程序损坏或者其他一些不可预知的副作用,请谨慎使用。 

http://www.lryc.cn/news/413160.html

相关文章:

  • Cadence23学习笔记(十七)
  • WinFrom调用webapi接口方法及其应用实例
  • 智能巡检企业级域名 SSL 证书
  • 海思35XX系列(三)sensor(传感器)
  • dfs(续做)
  • OpenStack;异构算力网络架构;算力服务与交易技术;服务编排与调度技术
  • PLC-Recorder对于数据采集时间戳偏差的修正功能
  • 自定义监控
  • 关于使用php的mpdf插件遇到的一些问题
  • 电脑截图,颜色变淡的问题解决
  • uniApp跳转外链
  • 科技云报道:大模型引领技术浪潮,AI安全治理面临“大考”
  • SpringSecurity+Mysql数据库实现用户安全登录认证
  • 虚拟网卡添加ip
  • Unity向量线性插值Lerp
  • fatal: Could not read from remote repository. 解决方法
  • postman查询单条数据Get方法,无任何输出,idea后端也没有任何数据和提示的解决方法
  • query怎么改写,才能实现高质量的知识问答系统
  • Python实战——轻松实现动态网页爬虫(附详细源码)
  • Python应用—利用opencv实现图像匹配
  • Excel函数基础(二)
  • 学习大数据DAY30 python基础语法3
  • 一文弄清Java的四大引用及其两大传递
  • arduino程序-MC猜数字5、6(基础知识)
  • 【笔记】如何在ps里调整贴图
  • 【C++11】深度解析--异步操作(什么是异步?异步有那些操作?异步操作有什么用呢?)
  • PHP苹果 V X iPhone微商i o s多分开V X语音转发密友朋友圈一键跟圈软件
  • LDR6020 iPad皮套一体式键盘充电方案解析
  • 一款功能强大且免费的跨平台图片批量处理工具
  • 用Python打造精彩动画与视频,4.2 特效和滤镜的使用