simple usage of sort command

I’d like to check the utilization of every CPU cores, so I typed top command and press 1, but it cant not display.

whth the warning:Sorry, terminal is not big enough

So I should use mpstat command , just input “mpstat -P ALL”, it can oupt utlization of each cups.

If I need to query real time utilization for 1000 times,interval is 2 seconds.

mpstat -P ALL 2 1000

[root@rac02 ~]# mpstat -P ALL 2 1000

Linux 2.6.32-431.el6.x86_64 (rac02.itas.com.na) 08/16/2018 _x86_64_ (80 CPU)

09:07:53 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle

09:07:53 AM all 1.99 0.00 0.34 0.06 0.00 0.02 0.00 0.00 97.59

09:07:53 AM 0 11.57 0.00 1.28 1.35 0.00 0.27 0.00 0.00 85.52

09:07:53 AM 1 20.69 0.00 2.09 0.16 0.00 0.27 0.00 0.00 76.78

09:07:53 AM 2 8.83 0.00 1.30 0.08 0.00 0.00 0.00 0.00 89.79

09:07:53 AM 3 2.40 0.00 0.52 0.05 0.00 0.00 0.00 0.00 97.03

09:07:53 AM 4 2.43 0.00 0.17 0.03 0.00 0.00 0.00 0.00 97.37

09:07:53 AM 5 1.43 0.00 0.08 0.02 0.00 0.00 0.00 0.00 98.47

but I want to show utilization of %user by descending order.I can use

sort command. As shown in the following.

[root@rac02 ~]# mpstat -P ALL | grep -v “Linux” |sort -k4nr

09:11:51 AM 42 25.88 0.00 2.96 0.01 0.00 0.61 0.00 0.00 70.54

09:11:51 AM 1 20.70 0.00 2.09 0.16 0.00 0.27 0.00 0.00 76.78

09:11:51 AM 9 16.43 0.00 1.85 0.01 0.00 0.26 0.00 0.00 81.45

09:11:51 AM 40 14.72 0.00 1.82 0.11 0.00 0.15 0.00 0.00 83.20

09:11:51 AM 0 11.57 0.00 1.28 1.35 0.00 0.27 0.00 0.00 85.53

09:11:51 AM 46 8.85 0.00 0.81 0.83 0.00 0.12 0.00 0.00 89.39

 

sort -k4nr

-k4: oder by forth column. By default, each column is delimited by a space,

If you want to delimit by other characters, use the -t: delimiter, such as

sort -k4nr-t: with a colon as the delimiter

n: order by number value

r: decesending orader

 

Leave a Reply