使用“ps”显示前五个 CPU 消耗进程

使用“ps”显示前五个 CPU 消耗进程

如何用 ps 显示占用 CPU 最多的五个进程?

答案1

ps当使用命令可以轻松完成时为什么要使用top

如果您必须使用ps,请尝试以下操作:

ps aux | sort -nrk 3,3 | head -n 5

如果您想要真正“顶级”且不断更新的东西,请使用 watch

watch "ps aux | sort -nrk 3,3 | head -n 5"

答案2

正确答案是:

ps --sort=-pcpu | head -n 6

因此您可以指定列而不干扰排序。

前任:

ps -Ao user,uid,comm,pid,pcpu,tty --sort=-pcpu | head -n 6

MAC OS X 的注意事项:在 Mac OS X 中,ps无法识别--sort,但可以-r按当前 CPU 使用情况排序。因此,对于 Mac OS X,您可以使用:

ps -Ao user,uid,comm,pid,pcpu,tty -r | head -n 6

答案3

我不认为ps这是你正在寻找的。你看过 的输出吗top

如果您有 GNU-Top,请尝试使用它的批处理模式吐出按 cpu 使用情况排序的进程列表,并使用 head/tail 获取前 5 行(前 8 行是标题):

top -b -n 1 | head -n 12  | tail -n 5

BSD 顶部似乎表现不同并且没有非交互模式,因此请使用其他ps基于解决方案之一。

答案4

我为此找到的最快的一个衬里(注6,因为标题加起来):

ps aux k-pcpu | head -6

相关内容