Could you help me combine these three scripts into a format similar to this
ComputerName CPUUsageAverage MemoryUsage C PercentFree xxx 12 50% 30%
The way I do this is: Get-content '.\servers.txt' | Get-CPUusageAverage Get-content '.\servers.txt' | Get-CPUusageAverage
Here are the scenarios:
CPU
Function Get-CPUusageAverage { $input|Foreach-Object{Get-WmiObject -computername $_ win32_processor | Measure-Object -property LoadPercentage -Average | Select Average} }
Memory
Function get-MemoryUsage { $input|Foreach-Object{ gwmi -Class win32_operatingsystem -computername $_ | Select-Object @{Name = "MemoryUsage"; Expression = { "{0:N2}" -f ((($_.TotalVisibleMemorySize - $_.FreePhysicalMemory)*100)/ $_.TotalVisibleMemorySize) } } } }
C PercentFree
Function get-CPercentFree { $input|ForEach-Object{ Get-WmiObject -Class win32_Volume -ComputerName $_ -Filter "DriveLetter = 'C:'" | Select-object @{Name = "C PercentFree"; Expression = { "{0:N2}" -f (($_.FreeSpace / $_.Capacity)*100) } } } }
source share