簡體   English   中英

檢索CPU使用率百分比

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM