Получить скорость процессора процессора с помощью PowerShell - PullRequest
0 голосов
/ 07 октября 2019

Мне нужно было получить число оборотов процессора в виде числа. Я не могу использовать какие-либо дополнительные служебные команды. Я могу использовать только cmd в Windows или Powershell.

wmic cpu get name | select -Skip 1 | %{$_.Split(' ')[5];} | %{$_.Substring(0, 3)}

Все выполняется правильно, кроме команды подстроки enter image description here

Делает ли этосуществует ли простой подход, чтобы исправить это? И почему я получаю 4 предупреждения для одного значения после команды split?

1 Ответ

3 голосов
/ 07 октября 2019

Не анализируйте wmic вывод, если только вы не нажали на производительность (и даже в этом случае вы должны делать (wmic cpu get maxclockspeed) -notlike '*maxclockspeed*', а не анализировать вывод имени процессора).

Использовать Get-WmiObject (все версии PowerShell) или Get-CimInstance (PowerShell v3 или новее) с классом Win32_Processor и разверните соответствующее свойство (MaxClockSpeed).

Get-CimInstance Win32_Processor | Select-Object -Expand MaxClockSpeed

Значение в МГц.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...