是否可以打印系統中每個核心的當前CPU使用率?使用windows命令行獲取每個核心的CPU使用率
這是我到目前爲止使用PowerShell:
Get-WmiObject -Query "select Name, PercentProcessorTime from Win32_PerfFormattedData_PerfOS_Processor"
是否可以打印系統中每個核心的當前CPU使用率?使用windows命令行獲取每個核心的CPU使用率
這是我到目前爲止使用PowerShell:
Get-WmiObject -Query "select Name, PercentProcessorTime from Win32_PerfFormattedData_PerfOS_Processor"
它可以使用下面的PowerShell命令來完成:
(Get-WmiObject -Query "select Name, PercentProcessorTime from Win32_PerfFormattedData_PerfOS_Processor") | foreach-object { write-host "$($_.Name): $($_.PercentProcessorTime)" };
你也可以創建一個與內容稱爲get_cpu_usage.ps1
文件:
while ($true)
{
$cores = (Get-WmiObject -Query "select Name, PercentProcessorTime from Win32_PerfFormattedData_PerfOS_Processor")
$cores | foreach-object { write-host "$($_.Name): $($_.PercentProcessorTime)" };
Start-Sleep -m 200
}
然後運行它使用:
powershell -executionpolicy bypass "get_cpu_usage.ps1"
作爲替代方案,您可以使用Get-Counter
命令。
例如:
Get-Counter -Counter '\Processor(*)\% Processor Time' -Computer $desktop | select -ExpandProperty CounterSamples
從我的測試中它的速度更快,大約4倍(ATLEAST在我的機器上)不查詢WMI。
編輯: 測試查詢更多一些,反覆使用後會更快(有平均的284 ms
),因爲至少1秒Get-Counter
需要獲得樣品。
它在內部引用WMI本身。 –