在一个简单的脚本中Get-WMIObject两次

时间:2013-10-23 09:20:46

标签: powershell powershell-v2.0

有这个脚本,但我还试图获得Get-WmiObject win32_processor -computer $ server |选择SystemName,标题,CreationClassName详细信息。如何将其与下面的脚本结合起来,以便我可以获得计算机名称,OS& Win 7/2008和Win 2003 32位计算机的体系结果。

$servers = Get-Content C:\Servers.txt
$results = foreach ($server in $servers) {get-wmiobject -class win32_operatingsystem -ComputerName $server | select-object csname, caption, OSArchitecture}
$results

上面的工作但是对于运行2003并且是32位的机器没有显示32Bit。任何帮助将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:0)

试试这个:

$servers = Get-Content C:\Servers.txt
$results = foreach ($server in $servers) {
  $info = gwmi Win32_OperatingSystem -Computer $server | select csname, caption, OSArchitecture
  gwmi Win32_Processor -Computer $server | % {
    $info | Add-Member 'SystemName' -Type NoteProperty -Value $_.SystemName
    $info | Add-Member 'CPU' -Type NoteProperty -Value $_.Caption
    $info | Add-Member 'CreationClassName' -Type NoteProperty -Value $_.CreationClassName
  }
  $info
}
$results