真的需要帮助:(我会尽量简单。
我有一个看起来像这样的大文件:
ID,Info1,Info2,info3,...
在每一行,我都有一个 ID 和很多东西,用逗号分隔。可以有> 3000行。
现在我得到了第二个这样的文件:
ID,Info4,Info5,Info6,...
第一个文件包含所有元素,而第二个文件仅包含其中一些元素。
比如第一个:
BLA1,some stuff...
BLA2,some stuff...
BLA3,some stuff...
ALO1,some stuff...
ALO2,some stuff...
第二个:¨
BLA3,some stuff2...
ALO1,some stuff2...
BLA1,some stuff2...
我想要的很简单,我想将第二个文件的所有 'some stuff2...' 附加到第一个文件中,就像join type=left
使用 sql
我希望现在有第一个文件:
BLA1,some stuff...,some stuff2...
BLA2,some stuff...
BLA3,some stuff...,some stuff2...
ALO1,some stuff...,some stuff2...
ALO2,some stuff...
我试过这样的事情:
ForEach ($line in $file1) {
$colA = $line.Split(',')
ForEach ($line in $file2) {
$colB = $line.Split(',')
if($colA[0]-eq $colB[0]) { #Item found in file2
$out += $date + $colA[1]+","+ ... +","+ $colB[1]+","+ ... +"`n"
}else {
$out += $date + $colA[1]+","+ ... +"`n"
}
}
}
但是它需要很长时间才能成功(也许还有其他我没有看到的问题)。最好的方法是什么?二维数组?我可以尝试对 ID 进行排序,然后编写一些脚本,但由于它不是数字,我不知道如何处理。
非常感谢您的帮助,