Я ищу инструмент командной строки/скрипт для периодического сбора и сохранения общего процента использования процессора и процессов, которые потребляют большую часть ресурсов процессора, аналогично sysinternals process explorer
скриншоту, который я вставил ниже.
я пытался
C:\Windows\system32>typeperf "\process(*)\% processor time" -sc 1
Это выводит две строки, с именами процессов в первой строке и использованием ЦП во второй, например
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, чтобы получить «текущий» процент использования ЦП?
Я проверил sysinternal pslist
. У него по одному процессу на строку, но я не могу понять, что означают эти цифры с точки зрения % загрузки ЦП.
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