比较2数组和删除元素

时间:2013-06-04 10:09:57

标签: arrays sorting powershell powershell-v3.0

我有两个这样的动态数组:

$exclude = @()
$exclude += "GORDON"
$exclude += "DEXTER"

$servers = @()
$servers += "CEPHEE"
$servers += "FIONA"
$servers += "GORDON"
$servers += "DEXTER"

如何删除$ servers数组中与$ exclude数组匹配的元素?

最后我只想在$ servers中使用这些元素:

FIONA
CEPHEE

我不想使用System.Collections.ArrayList

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

试试这个:

  $servers= Compare-Object $EXCLUDE $servers | select -expa inputobject

如果$exclude的值不在$servers中,则可以更好地使用

$servers = Compare-Object $servers  $exclude | ? { $_.sideindicator -eq '<=' } | 
           select -expa inputobject