hey all, I just wrote the below script to do this, although here's a one-liner as well:
PS C:\temp> gwmi Win32_Processor | Format-table SystemName,Name,NumberOfCores -auto
SystemName Name NumberOfCores
---------- --- -------
Server-01 Intel(R) Xeon(R)CPU X5460 @ 3.16GHz 4
Server-01 Intel(R) Xeon(R)CPU X5460 @ 3.16GHz 4
Script
=================================================
$strComputer = (hostname)
$OF = "C:\temp\CPUAudit.txt"
$Arr = @()
Write-Host Begin Processor Survey -ForegroundColor Yellow
Foreach ($Server in $strComputer) {
$Counter = 0
Write-Host Querying Processor information on $Server -ForegroundColor Magenta
$colItems = get-wmiobject -class Win32_Processor -computername $Server
foreach($objItem in $colItems){
$temp = New-Object system.Object
$temp | Add-Member -MemberType NoteProperty -Name "MachineName" -Value $objItem.SystemName
$temp | Add-Member -MemberType NoteProperty -Name "Description" -Value $objItem.Caption
$temp | Add-Member -MemberType NoteProperty -Name "CPU #" -Value $objItem.Name
$temp | Add-Member -MemberType NoteProperty -Name "# Cores" -Value $objItem.NumberOfCores
$Arr += $temp
$Counter++
}
Write-Host Query returned $Counter Procs on $Server
Write-Host =================
}
Write-host Processed $Arr.count Servers -ForegroundColor Green
$Arr | FT -autosize | Out-File $OF -Append
Post by joeHow do I print out only the SystemName from Win32_Processor or
Win32_computerSystem
Post by Pegasus (MVP)Set objCompSet =
GetObject("winmgmts:{impersonationLevel=impersonate}!//./root/cimv2").ExecQuery("select
Name from Win32_ComputerSystem")
For Each objDetail In objCompSet
WScript.echo objDetail.Name
Next
Post by joeHi
What about the "system name" variable
I want to output
System Name
hostname
under one column in excel
I am not aware of a "System Name" variable. Where does
it occur?
Post by joewhen i run
For Each objProperty In objClass.Properties_
objSheet.Cells (intRow, intColumn) = objProperty.Name
intColumn = intColumn + 1
Next
There is a column called System Name
I want to output only this
Can't tell - you are not giving us any definition of the object
objClass.Properties_.
Post by joeSet colItems = objWMIService.ExecQuery _
("Select * from Win32_Processor")
Post by AllanstrComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessors = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objProcessor in colProcessors
WScript.Echo " SystemName: " & objProcessor.SystemName
Next
http://msdn.microsoft.com/en-us/library/aa394373(VS.85).aspx
Thanks,
Allan