使用Windows PowerShell进行交易调节

时间:2018-01-19 21:24:08

标签: powershell database-reconciliation

我希望使用PowerShell快速协调大量的交易估值。

示例:

File_1 - Trade_id = 123456, 789101      Valuation = 10, 20
File_2 - Trade_id = 123456, 789101      Valuation = 10, 30

我的问题是如何在文本文件中显示Trade_id的估值差异?

我在想这样的事情 -

Compare-Object $(Get-Content H:\File_1.txt) $(Get-Content H:\File_2.txt) | Out-File H:\datarecon.txt

然而,结果的格式化并不是我想要的。我希望命令按Trade_id评估差异,无论每个文件中的Trade_id位于何处并提供差异。

1 个答案:

答案 0 :(得分:1)

这不是Compare-Object的用途。它将整个文件与另一个文件进行比较,而不是另一个文件。

至于......

  

无论Trade_ids在每个文件中的位置

这在我的脑海中翻译,因为你拥有的文件是非结构化数据。只是一个带有大量交易信息的文本文件,它分散在整个文件中。

没有办法让Compare-Object做你想要的。您将不得不自己编写代码。

如果您的文件组织不当,即非结构化数据,则在编写其他代码以执行分析工作之前,您将不得不解析每个文件以组织数据。

PowerShell处理对象,您需要以这样的方式转换文件构造,以便使您/ PowerShell可以使用您所拥有的对象。

考虑如何将交易文件放入Excel电子表格中,然后PowerShell可以使用Import-Csv读取这些文件,您可以从那里解析和分析Excel数据。意思是,像你所显示的东西都需要每个文件每行一行。数据必须转入一个表,其中trade_id作为一个关键值来转动/连接。

您的示例仅显示您的数据文件,而不是文件的大小,因此我们知道您正在使用的是真实的,与推测相比。