码迷,mamicode.com
首页 > 系统相关 > 详细

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

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

标签: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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!