如何根据计算机名称对输出进行排序

时间:2017-05-17 22:43:25

标签: powershell powershell-v2.0 powershell-v3.0 powershell-remoting

我在下面的脚本中检查名称为" security"在它中是否安装在远程服务器中。例如,我正在搜索两台服务器。我想根据服务器名称对输出进行排序。

PS C:\Users\TEMP.DEBPO\Desktop> Get-WmiObject -computerName USWTODWV01,USWPISMWV01 -Class Win32_Product | sort-object co
mputerName,Name | select SystemName,Name | where { $_.Name -match "security"}

SystemName                                                  Name
----------                                                  ----
                                                            Trend Micro Deep Security Agent
                                                            Trend Micro Deep Security Agent

在系统名称下,我想查看计算机名称。非常感谢帮助。

1 个答案:

答案 0 :(得分:1)

使用计算属性作为select的参数:

... | Select @{Name='SystemName';Expression={$_.ComputerName}},Name | ...

但您可能正在寻找WMI实例的__SERVER属性,而不是ComputerName

Get-WmiObject -ComputerName USWTODWV01,USWPISMWV01 -Class Win32_Product | Sort-Object __SERVER,Name | select @{Name='SystemName';Expr={$_.__SERVER}},Name | where { $_.Name -match "security"}