我正在尋找一個命令列工具/腳本來定期捕獲和儲存 CPU 總使用率以及佔用大部分 CPU 的進程,類似於sysinternals process explorer
我在下面貼上的螢幕截圖。
我努力了
C:\Windows\system32>typeperf "\process(*)\% processor time" -sc 1
這會輸出兩行,第一行是進程名稱,第二行是 CPU 使用情況,例如
C:\Windows\system32>typeperf "\process(_Total)\% processor time" "\process(mcshield)\% processor time" -sc 1
"(PDH-CSV 4.0)","\\****\process(_Total)\% processor time","\\****\process(mcshield)\% processor time"
"01/25/2021 09:06:44.599","792.840227","29.364453"
The command completed successfully.
由於電腦有 8 個核心,我可以簡單地將其除以 8 以獲得「當前」CPU 使用率嗎?
我檢查了sysinternal pslist
。它每行都有一個進程,但我無法弄清楚這些數字在 CPU 百分比方面的含義。
C:\Windows\system32>pslist -nobanner
Process information for W-2D5TQQ2:
Name Pid Pri Thd Hnd Priv CPU Time Elapsed Time
Idle 0 0 8 0 60 4:38:55.890 1:19:32.649
System 4 8 289 5662 216 0:28:33.656 1:19:32.649
Secure System 72 8 0 0 184 0:00:00.000 1:19:40.412
Registry 128 8 4 0 14012 0:00:13.406 1:19:40.225
smss 620 11 2 53 1188 0:00:01.015 1:19:32.630
csrss 960 13 13 901 1932 0:00:20.796 1:19:08.909
wininit 648 13 1 163 1372 0:00:00.218 1:19:04.494