首页 > 系统服务 > 详细

Powershell脚本实时获取所有cpu使用时间非0的进程

时间:2015-08-12 07:50:21      阅读:792      评论:0      收藏:0      [点我收藏+]

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的进程

原文:http://simy88.blog.51cto.com/7370552/1683840

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!