标签:powershell 进程 cpu使用率
Powershell脚本实时获取所有cpu使用时间非0的进程,并将名称一致的进程合并。
#定义结果输出路径
$OutFile = "D:\CPU_" + (Get-Date).GetDateTimeFormats()[1] + ".csv"
#定义性能收集器对象
$CpuCores = (Get-WMIObject Win32_ComputerSystem).NumberOfLogicalProcessors
$Processes = Get-Counter "\Process(*)\% Processor Time"
$Timestamp = $Processes.Timestamp
$Samples = $Processes.CounterSamples
#对相同进程进行叠加汇总
$Process_Poly=@()
$Process_Group = $Samples | Group-Object -Property InstanceName
Foreach ($Group in $Process_Group)
{
$TempObj = New-Object psobject
$Member = $Group.Group
$MemberName = $Group.Name
$Sum = ($Member | measure -Property CookedValue -Sum).sum
if ($sum -ne "0")
{
$Sumformat = "{0:N2}" -f ($sum)
$TempObj | Add-member -Type NoteProperty -name "Process" -value $MemberName
$TempObj | Add-member -Type NoteProperty -name "CPU%" -value $Sumformat
$TempObj | Add-member -Type NoteProperty -name "Timestamp" -value $Timestamp
$Process_Poly +=$TempObj
}
}
#输出结果
$Process_Poly | Export-Csv -Path $OutFile -Encoding utf8 -Force -NoTypeInformation -Append
本文出自 “精华荟萃” 博客,请务必保留此出处http://simy88.blog.51cto.com/7370552/1683840
Powershell脚本实时获取所有cpu使用时间非0的进程
标签:powershell 进程 cpu使用率
原文地址:http://simy88.blog.51cto.com/7370552/1683840