linux – 查找(并杀死)旧进程

linux – 查找(并杀死)旧进程,第1张

概述基本上我需要能够扫描进程树并找到与某个名称匹配的进程,并开始运行超过一周.一旦我拥有它们,我需要杀死它们.系统仍然将所有进程视为处于运行状态,而不是使用任何系统时间.他们通常也会永远处于这种状态. 理想情况下,我想找到类似的东西,但是对于流程来说. 系统是Debian linux,这将由cron编写并运行,所以我没有真正的大问题,但可以理解. 你可以用ps,awk和kill的组合做到这一点: ps 基本上我需要能够扫描进程树并找到与某个名称匹配的进程,并开始运行超过一周.一旦我拥有它们,我需要杀死它们.系统仍然将所有进程视为处于运行状态,而不是使用任何系统时间.他们通常也会永远处于这种状态.

理想情况下,我想找到类似的东西,但是对于流程来说.

系统是Debian linux,这将由cron编写并运行,所以我没有真正的大问题,但可以理解.

解决方法 你可以用ps,awk和kill的组合做到这一点:
ps -eo pID,etime,comm

为您提供三列输出,包括进程PID,自进程启动以来经过的时间以及没有参数的命令名称.经过的时间看起来像下列之一:

mm:sshh:mm:ssd-hh:mm:ss

由于您希望流程运行超过一周,因此您将寻找与第三个模式匹配的行.您可以使用awk通过运行时间和命令名来过滤掉进程,如下所示:

ps -eo pID,comm | awk '~/^7-/ && ~/mycommand/ { print  }'

这将打印匹配’mycommand’的所有命令的pIDs,这些命令已运行超过7天.管道列表杀死,你完成了:

ps -eo pID,comm | awk '~/^7-/ && ~/mycommand/ { print  }' | kill -9
总结

以上是内存溢出为你收集整理的linux – 查找(并杀死)旧进程全部内容,希望文章能够帮你解决linux – 查找(并杀死)旧进程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1045412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存