小编Del*_*ran的帖子

按 etime 排序 PS 命令

所以我正在尝试开发一个脚本来查找特定进程,并杀死运行时间最长的进程。试图按经过时间对命令进行排序正在成为问题。这是我正在运行的命令,我知道有很多 | 并且可能更清楚为什么要这样做,但我对使用awk还很陌生。

ps -eo pid,cmd,stat,etime --sort=etime | grep cassi32 | awk '$3 == "/rESTECH"' | awk '$4 == "S"'
Run Code Online (Sandbox Code Playgroud)

我得到的输出是这个。

5703 cassi32 /rESTECH            S          00:40
65504 cassi32 /rESTECH            S     1-21:45:39
65520 cassi32 /rESTECH            S       03:21:39
65521 cassi32 /rESTECH            S     3-15:02:37
65531 cassi32 /rESTECH            S     1-21:44:39
Run Code Online (Sandbox Code Playgroud)

如您所见,etime 列似乎没有任何特定顺序,而是按 PID 排序。

关于如何按 etime 进行排序的任何想法。一旦完成,我可以处理杀死部分。

sorting awk kill ps

4
推荐指数
1
解决办法
2779
查看次数

标签 统计

awk ×1

kill ×1

ps ×1

sorting ×1