使用powershell比较Array的Missing元素

时间:2011-06-16 08:11:27

标签: arrays powershell

  

可能重复:
  Comparing two arrays & get the values which are not common

我想要一个逻辑来从数组中获取不常见的项目,例如:

$a=@(1,2,3,4,5,6)
$b=@(1,2,3,4,5,7,9,10)

我希望输出$c为6,这是$b数组中缺少的元素,优先级应仅提供给$a的数组内容。

任何人都可以帮我解决这个问题吗? 谢谢!

2 个答案:

答案 0 :(得分:4)

无论是empo的方法,还是

$a1=@(1,2,3,4,5,8)
$b1=@(1,2,3,4,5,6)
Compare-Object $a1 $b1 | 
   Where-Object { $_.SideIndicator -eq '<=' } | 
   Foreach-Object { $_.InputObject }

返回8

答案 1 :(得分:2)

$c = $a | ? {!($b -contains $_)}

优先级将给你“管道”变量。