通过名称杀死一天的旧流程

时间:2013-05-06 10:56:04

标签: linux bash shell

我有一个与问题有关的问题。 这是我的代码:

ps -eo pid,etime,cmd|grep ${1}|grep -v grep|awk '{if ($2>="23:59:59") print $1}'|xargs kill -9

我试图杀死具有特定名称的所有进程,其中etime超过一天。它运行良好,直到我被告知脚本无法以1-23:00:00的格式杀死代表日期的进程。

将awk过程中的变量$ 2更改为1-00:00:00将使用给定名称终止所有进程。你能给我一个如何正确格式化etime的提示吗?

1 个答案:

答案 0 :(得分:3)

我建议您将ps选项etime更改为etimes,而不是更改awk脚本。

使用etimes,您可以在几秒钟内获得的生命周期。如果值> or <某个值,您可以自由选择杀死或不杀死。甚至,$2>=somevalue1 && $2<= somevalue2