Я написал следующий скрипт для Windows Server 2012 & Windows 7, который отображает нагрузку на процессор с использованием Get-WmiObject -Class Win32_PerfFormattedData_PerfOS_Processor
. Он работает достаточно хорошо, а также отображает нагрузку на консоль, но когда я продолжаю проверять выходы консоли с монитором производительности (% процессорного времени), он не подходит для вывода на консоль. Является ли мой скрипт для проверки нагрузки на процессор правильной? Как я могу суммировать свой скрипт с монитором производительности?Как получить нагрузку на ядра или процессор, используя скрипты powershell?
while(1)
{
$cpucores = get-wmiobject win32_perfformatteddata_perfos_processor
$currenttime = get-date | out-file report.txt -append
write-host
write-host "CPU Cores individually usage Monitoring"
write-host $currenttime
for ($i=0; $i -lt $cpucores.count ; $i++)
{
if($i -eq $cpucores.count-1)
{
#write-host
$value=$cpucores[$i].percentprocessortime
write-host "Total CPU " $value"% usage"
write-output "Total CPU $value % usage" >> report.txt
write-output "..............................................................." >> report.txt
}
else
{
$load_value=[double]$cpucores[$i].percentprocessortime
write-host "CPU Core"$i $load_value "% usage" -foregroundcolor green
write-output "CPU Core $i $load_value % usage" >> report.txt
}
}
start-sleep -seconds 1
}