使用 VBScript 查找文本文件之间的缺失值

Find missing values between text files using VBScript

编辑 2

只是为了说清楚 - 这个问题不是要求“DA CODEZ”,只是关于 VBScript 中可能的方法的想法。这不是我选择的武器,如果我需要在 un*x 盒子上这样做,那么我不会用这个来打扰任何人...


我有两个文本文件。 文件 A 包含一个键列表:

00001 13756 000.816.000 BE2B
00001 13756 000.816.000 BR1B
00002 16139 000.816.000 BR1B
00001 10003 000.816.000 CH1C
00001 10003 000.816.000 CH3D
00001 13756 000.816.000 CZ1B
....
....

文件 B,制表符分隔,包含两列键和一个 UUID:

00003 16966 001.001.023 2300    a3af3b1d-ea04-4948-ba25-59b36ae364ae
00001 12119 001.001.023 CZ1B    e6efe825-0759-48b0-89b9-05bbe5d49625
00002 16966 001.001.023 BR1B    d3a1d62b-a0d5-43c3-ba49-a219de5f32a5
00001 12119 001.001.023 BR1B    5d74af27-ed4b-4f90-8229-90b6d807515b
00001 10009 001.001.024 BR1B    590409cc-496a-49eb-885c-9bbc51863363
00002 24550 001.001.024 2100    46ecea5d-f8f5-4df9-92cf-0b73f6c81adc
00001 12119 001.001.024 CZ1B    e415ce6f-7394-4a66-a7f8-f76487e78086
00002 16966 001.001.024 CZ1B    c591a726-4d71-4f61-adfd-63310d21d397
....
....

我需要使用纯 VBScript 提取 文件 B 中那些在 文件 A 中没有匹配条目的条目的 UUID . (如果这是一个重要的标准,我需要优化速度。)结果应该是一个孤立的 UUID 代码文件。

如果这不是 easy/possible,这也是一个答案 - 我可以在我们使用的数据库中完成,但性能严重不足。对于之前的处理任务,VBScript 比 db 解决方案快得多,这让我大吃一惊。

编辑

有人建议在将文件转换为 CSV 后使用某种 ADO 库,我正在研究它。

也许最快的方法就是让 OS 去做

Dim orphan
    orphan = WScript.CreateObject("WScript.Shell").Exec( _ 
        "findstr /g:keys.txt /v uuids.txt" _ 
    ).StdOut.ReadAll()

    WScript.Echo orphan

也就是说,使用 findstr 检查 uuids.txt 文件中与 keys.txt 文件中的任何行不匹配的行