有用的数据结构或优化以下情况

时间:2013-08-21 09:46:16

标签: powershell data-structures

我有两个文件A和B. A包含17000条记录,B也有大约17000条记录。我想将B的每个记录与A进行比较,B中所有不匹配的记录应该发送到其他文件。我正在填充一个包含A内容的数组,然后从B中逐个提取记录并尝试使用二进制搜索在A中找到它。

我对搜索所花费的时间感到满意,但是使用记录填充数组的步骤大部分时间(大约80%)。我怎样才能减少这个时间?

我正在使用PowerShell。

1 个答案:

答案 0 :(得分:2)

尝试Compare-Object cmdlet:

$a = Get-Content a.txt
$b = Get-Content b.txt

Compare-Object -ReferenceObject $a -DifferenceObject $b

查看结果的SideIndicator属性。 '< ='表示该条目仅存在于$ a(ReferenceObject)中,'=>'表示条目存在于$ b(DifferenceObject)上。然后,您可以使用Where-Object过滤结果,并将InputObject写入另一个文件