kill命令详解kill -9、kill -15区别

这篇具有很好参考价值的文章主要介绍了kill命令详解kill -9、kill -15区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

kill相当于赐死,kill -9相当于斩立决

kill命令默认的信号就是15,也就是 kill -15

1.从help中可以清晰的看到 -n 指的是 信号编号

kill命令详解kill -9、kill -15区别

2.kill -l(查看Linux/Unix的信号变量)

kill命令详解kill -9、kill -15区别

 3.说一下SIGKILL(kill -9)和SIGTERM(kill -15)

kill -9 PID 是操作系统从内核级别强制杀死一个进程.

kill -15 PID 可以理解为操作系统发送一个通知告诉应用主动关闭.

SIGNTERM(15) 的效果是正常退出进程,退出前可以被阻塞或回调处理。并且它是Linux缺省的程序中断信号。

大部分程序接收到SIGTERM信号后,会先释放自己的资源,然后再停止。但是也有程序可以在接受到信号量后,做一些其他的事情,并且这些事情是可以配置的。如果程序正在等待IO,可能就不会立马做出响应。也就是说,SIGTERM多半是会被阻塞的、忽略。

但是kill -9 pid也并不是可以杀死所有的程序,总有那些状态下的程序无法立刻响应。

4.kill -9杀不掉的怎么办(僵尸进程)

4.1 用ps和grep命令寻找僵尸进程

ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'

命令注解:

  • -A 参数列出所有进程
  • -o 自定义输出字段 我们设定显示字段为 stat(状态), ppid(进程父id), pid(进程id),cmd(命令)这四个参数 因为状态为 z或者Z的进程为僵尸进程。

4.2我们使用grep抓取stat状态为zZ进程,运行结果参考如下:

Z 12334 12339 /path/cmd

4.3使用 kill -HUP 12339来杀掉这个僵尸进程

运行后,可以再次运行

kill命令详解kill -9、kill -15区别

来确认是否已经将僵尸进程杀死 如果kill 子进程无效,可以尝试kill 其父进程来解决问题,例如上面例子父进程pid是 12334,那么我们就运行

4.4 kill -HUP 12334

来解决问题文章来源地址https://www.toymoban.com/news/detail-482004.html

到了这里,关于kill命令详解kill -9、kill -15区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JavaScript 发布-订阅设计模式实现 React EventBus(相当于vue的$Bus)非父子之间通信

    参考文档:https://github1s.com/browserify/events/blob/main/events.js                  https://www.npmjs.com/package/events                  https://github.com/browserify/events                     首先先新建一个文件eventBus.tsx 然后再组件A使用=接收 然后再组件B使用=触发     安装这个events插件

    2023年04月18日
    浏览(102)
  • Unity UGUI的PhysicsRaycaster (物理射相当于利用泛型函数保存了类型信息线检测)组件的介绍及使用

    这是在Datadog公司任职的Kevin Gosse大佬使用C#编写.NET分析器的系列文章之一,在国内只有很少很少的人了解和研究.NET分析器,它常被用于APM(应用性能诊断)、IDE、诊断工具中,比如Datadog的APM,Visual Studio的分析器以及Rider和Reshaper等等。之前只能使用C++编写,自从.NET NativeAOT发

    2024年01月22日
    浏览(64)
  • kill命令详解kill -9、kill -15区别

    kill相当于赐死,kill -9相当于斩立决 kill命令默认的信号就是15,也就是 kill -15 1.从help中可以清晰的看到 -n 指的是 信号编号 2.kill -l(查看Linux/Unix的信号变量)  3.说一下SIGKILL(kill -9)和SIGTERM(kill -15) kill -9 PID 是操作系统从内核级别强制杀死一个进程. kill -15 PID 可以理解为操作系统

    2024年02月08日
    浏览(35)
  • Linux kill 、kill -15、kill -9 的区别

    kill命令格式: kill -Signal pid pid 是进程号,可以用 ps 命令查出 signal 是发送给进程的信号 kill 和 kill -9 ,两个命令在Linux中都有杀死进程的效果,然而两命令的执行过程却大有不同,在程序中如果用错了,可能会造成莫名其妙的现象。 kill(不加 -* 默认kill -15) 命令 系统会发

    2024年02月04日
    浏览(40)
  • KILL命令信号详解

    kill 命令通常用来 “杀死”(终止)进程,它可以用来终止运行不正常的程序或者反过来拒绝终止的程序。kill 命令准确地说并不是 “杀死” 进程,而是给进程发送信号(signal)。和文件一样,进程也有所有者,只有进程的所有者(或超级用户)才能使用 kill 命令来向它发送

    2024年02月03日
    浏览(50)
  • 推荐windows命令行软件管理工具WinGet,相当方便!

    WinGet是微软推出的支持win10及以上操作系统的软件管理工具,全称为\\\'windows package manager client\\\'。 可以在windows操作系统命令行轻松的安装/卸载或升级应用程序,里面的软件库对接的是\\\'Microsoft Store\\\'(微软应用商店)。 WinGet工具默认是操作系统本身就自带的,若是需要升级可以前

    2024年02月09日
    浏览(88)
  • CentOS8提高篇15:tar命令详解

            tar命令是Linux/Unix系统下的打包压缩工具,可以将多个文件合并为一个文件,打包后的文件后缀为“.tar”。         这里首先需要明确两个概念:打包和压缩。打包是指将一大堆文件或目录合并成一个总的文件;压缩则是将一个大容量的文件通过一些压缩算法(gzi

    2024年02月16日
    浏览(30)
  • Linux命令·kill·killall

    Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令。通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PID,然后使用kill命令来杀掉该进程。

    2024年02月05日
    浏览(63)
  • Linux 命令 kill -n

    平时在Linux操作中经常遇到杀掉进程的操作,通常查出要被杀死的进程后, 会使用 kill -9 进程号 的方式 杀掉该进程, 很多小伙伴一定疑惑除了 数字9 其它数字参数是什么作用, 以下列举几个常用的 数字参数 kill -n 命令用于向指定的进程发送一个特定的信号。其中, -n 是一

    2024年02月13日
    浏览(38)
  • python中正则表达式的使用详解(相当全面)

    #正则表达式是什么? 它是约束字符串匹配某种形式的规则 #正则表达式有什么用? 1.检测某个字符串是否符合规则.比如:判断手机号,身份证号是否合法 2.提取网页字符串中想要的数据.比如:爬虫中,提取网站天气,信息,股票代码,星座运势等具体 正则只能匹配字符串格式,不

    2024年01月16日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包