专栏首页程序员小助手Linux进程批量杀死,一行命令全搞定,加强修复版

Linux进程批量杀死,一行命令全搞定,加强修复版

这一篇是对前面一篇的更新,也是bug修复。

回顾

上一个版本,我们推荐在Linux下,使用管道符,使用了4个工具,5个指令,将进程中不想使用的PIDs,进行批量kill操作。

使用工具如下:

ps aux | grep thread_name | grep -v grep | cut -c 9-15 | xargs kill -9

功能再分析

注意,上一条,我们使用cut这个裁切文本工具。

正如一位专业人士指出的那样,这样写是有bug的!

如果PID号超过7位,怎么办?

是的,使用 cut -c选项,将所有字符,单个批开,然后用固定位置截取PID,7位以下,可以做到拿到正确的PID号。

话说,Linux进程号,可能达到7位吗?

完全可能!

Bug修复

上面的命令行如何修改?

我们注意到,其实关键因素是ps的输出,以及cut的裁切。

cut:我们使用了-c选项,用于挨个字符串切割,然后定位,这样做短期可以,超过15 - 9 + 1 = 7位,极其危险。 因为,如果你用的root权限执行,kill掉的,可能是一个重要的应用进程。

线上很有可能瘫痪的。

Awk工具

是时候祭出重量级编程工具语言——awk了!

上面的命令行这样写:

ps aux | grep thread_name | grep -v grep | awk -F " " '{print $2}' | xargv kill -9

为什么awk可以?

因为awk使用的-F分隔符自动去除了无效的连续空格。

所以,只要ps aux的输出顺序不变,awk拿到的$2,就永远是PID。

写在最后

纸上得来终觉浅,绝知此事要躬行。

大家测试一下,有问题留言反馈。

本文分享自微信公众号 - 程序员小助手(mql45ea),作者:walles

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-01-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • URL编码解码字符串,互联网无歧义传输,Go一招鲜吃遍天!

    在本文中,您将了解如何在Golang中对查询字符串或路径段进行URL编码。URL编码,也称为百分比编码,将包含不可打印、保留或非ascii字符的字符串转换为可以...

    程序员小助手
  • 文言文编程?算了吧!不过是一个想家华裔的一厢情愿

    Github在trending页面,增设spoken language筛选项,我想用意已经很明显了,地址来自中国的无聊项目扰乱视听。

    程序员小助手
  • 3分钟短文 | PHP 如何优雅地获取文件扩展名?别再explode了

    通常文件扩展名在Linux系统上是没有意义的,仅是用来标记该文件属于哪种类型?但是大多数,我们从浏览器上访问Web程序。提交给服务器的文件是带有扩展名的,比如,...

    程序员小助手
  • 计算机内存管理介绍

    计算机操作系统内存管理是十分重要的,因为其中涉及到很多设计很多算法。《深入理解计算机系统》这本书曾提到过,现在操作系统存储的设计就是“带着镣铐跳舞”,造成计算机...

    黄泽杰
  • 整个朋友圈都是爱你的样子——python骚操作

    另外还有一件事情,过几天和当当网合作,有个福利活动,有买书的小伙伴可以稍等几天,可以少花三十块钱左右哦!

    Python进击者
  • 整个朋友圈都是爱你的样子——python骚操作

    另外还有一件事情,过几天和当当网合作,有个福利活动,有买书的小伙伴可以稍等几天,可以少花三十块钱左右哦!

    AI算法与图像处理
  • 浓缩的才是精华:浅析 GIF 格式图片的存储和压缩

    GIF是我们很常见的动态图片格式,本文分析了GIF图的版本更迭,数据结构、分析其存储和优化策略,并根据具体应用场景(表情包的批量缩略图生成)设计了一种抽帧压缩算...

    WendyGrandOrder
  • win10 uwp 使用 Geometry resources 在 xaml

    经常会遇到在 xaml 使用矢量图,对于 svg 的矢量图,一般都可以拿出来写在 Path 的 Data ,所以可以写为资源,但是写出来的是字符串,如何绑定 G...

    林德熙
  • javascript变量:全局?还是局部?这个得注意

            如果有Var,在函数内部声明变量是局部变量,如下例,读取不到name的数据。

    令仔很忙
  • 美国「统治」ICML 2020!中国大陆入选论文数仅为美国1/6,原因竟与春节有关

    本届ICML将在2020年7月13日至18日,采用虚拟会议的形式举行。从6月3日放出的论文接收结果来看,ICML 2020共提交了4990篇论文,接受了1088...

    新智元

扫码关注云+社区

领取腾讯云代金券