我正在编写一个bash脚本,我正在使用
ps -e -o %cpu
命令。
我希望输出已排序的%cpu
值(降序)。怎么做?
我知道我应该使用sort命令,但我不知道如何。
答案 0 :(得分:10)
ps -e -o %cpu | sort -nr
n
表示数字,r
表示反向。如果您还想删除标题:
ps -e -o %cpu | sed '1d' | sort -nr
答案 1 :(得分:1)
ps有一个内置选项,可根据所选的任何字段对其输出进行排序。你可以使用
ps k -%cpu -e -o %cpu
此处,k
根据提供的字段对输出进行排序,-%cpu
按降序对其进行排序。
如果省略排序字段前面的-
,则它将按升序排序。
另请注意,您可以为其指定多个排序字段:
ps k -%cpu,-%mem -e -o %cpu,%mem
这首先根据%cpu
字段对输出(按两者的降序排序)进行排序,然后根据%mem
字段对输出进行排序。