我目前有两个满是名字的数组。一个包含从 txt 文件中读取的数据,一个包含从 CSV 文件中读取的数据。我正在尝试返回出现在两个列表中的名称列表,并且只出现在单个列表中。对于 CSV 文件,PowerShell 本来想放在"Name="
每个项目的前面,但我$formattedName = $csvFile -replace "Name=",""
以前把它去掉了。我还应该提到这Name
是该列的标题。此时,如果我调用变量$formattedName
,它会返回名称列表,而不是Name=
前面的名称(也就是 txt 如果格式化以进行比较)。
现在尝试使用时Compare-Object
,我遇到了一个问题。我的代码如下:
Compare-Object -ReferenceObject $txtFile -DifferenceObject $formattedName -IncludeEqual
现在,在运行此命令时,PowerShell 仍将放在Name=
CSV 文件的每个项目的前面,而不管我只是将其格式化为不这样做。我的最终结果是两个列表,一个包含 txt 文件中的所有项目,另一个包含 CSV 文件中的所有项目。没有两个匹配值,因为Steven
与 不同Name=Steven
。输出的一个例子是:
Steven =>
Name=Steven <=
我该如何解决这个问题?我使用得当吗?