[英]Retrieve CPU usage percentage
我想檢索處理器使用率百分比,但沒有其他顯示大量數字的命令。 有一個使用“ grep”或“ awk”之類的解決方案。
~$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 1447984 190232 146508 4983236 0 0 0 10 0 0 2 1 97 0
我使用了vmstat命令,並且我只想要CPU冒號中的'sy'號。
top command output :
[m20176 libvirt- 20 0 4368m 4,0g 3028 S 12,0 25,3 24695:44 kvm (B[m[39;49m
(B[m25320 libvirt- 20 0 3520m 3,0g 3056 S 2,7 19,2 21786:15 kvm (B[m[39;49m
(B[m 1 root 20 0 10656 624 596 S 0,0 0,0 5:46.26 init (B[m[39;49m
(B[m 2 root 20 0 0 0 0 S 0,0 0,0 0:00.12 kthreadd (B[m[39;49m
(B[m 3 root 20 0 0 0 0 S 0,0 0,0 476:10.20 ksoftirqd/0 (B[m[39;49m
(B[m 6 root rt 0 0 0 0 S 0,0 0,0 0:08.16 migration/0 (B[m[39;49m
(B[m 7 root rt 0 0 0 0 S 0,0 0,0 2:03.06 watchdog/0 (B[m[39;49m
(B[m 8 root rt 0 0 0 0 S 0,0 0,0 0:04.30 migration/1 (B[m[39;49m
(B[m 10 root 20 0 0 0 0 S 0,0 0,0 0:38.83 ksoftirqd/1 (B[m[39;49m
(B[m 12 root rt 0 0 0 0 S 0,0 0,0 1:43.93 watchdog/1 (B[m[39;49m
(B[m 13 root rt 0 0 0 0 S 0,0 0,0 0:03.41 migration/2 (B[m[39;49m
(B[m 15 root 20 0 0 0 0 S 0,0 0,0 2:42.22 ksoftirqd/2 (B[m[39;49m
(B[m 16 root rt 0 0 0 0 S 0,0 0,0 1:49.23 watchdog/2 (B[m[39;49m
(B[m 17 root rt 0 0 0 0 S 0,0 0,0 0:04.42 migration/3 (B[m[39;49m
(B[m 19 root 20 0 0 0 0 S 0,0 0,0 408:06.08 ksoftirqd/3 (B[m[39;49m
在此,顯示每個過程的過程用途(僅一部分)。 我發現了這個命令:
`top -b -d1 -n1|grep -i "Cpu(s)"|head -c21|cut -d ' ' -f3|cut -d '%' -f1`
在這里 。 但這是啟動時的CPU使用率,而不是實時使用率。
一個簡單的awk
可以在這里為您提供幫助(考慮到您只想打印sy列的數字)。
vmstat 1 10 | awk 'FNR>1{print $(NF-3)}'
注意:我使用vmstat 1 10
在服務器上執行10次vmstat
命令,然后打印$(NF-3)
值,該值是最后一個值的第4個值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.