在CSV文件中查找重复的行

时间:2016-06-23 15:47:34

标签: csv powershell

我正在尝试使用Powershell搜索csv文件并在csv文件中输出重复行列表。我可以通过以下方式在bash中轻松完成此任务:

uniq -d myfile.csv > list.csv

在Powershell中我可以输出一个唯一行列表但是如何修改Get-Unique以仅显示像我在bash中所做的重复行?

Get-Content c:\file\myfile.csv | Get-Unique | Set-Content c:\file\list1.csv

1 个答案:

答案 0 :(得分:2)

使用独特的工具获取重复项有点奇怪。怎么样:

gc .\test.csv | group -NoElement |? Count -gt 1 | select -expand name

将行数分组,识别具有重复项的行,并输出它们。例如如果:

test.csv contains:

a,b,c
d,e,f
a,b,c
z,z,z

gc test.csv | group

Count Name                      Group                                                                    
----- ----                      -----                                                                    
    2 a,b,c                     {a,b,c, a,b,c}                                                           
    1 d,e,f                     {d,e,f}                                                                  
    1 z,z,z                     {z,z,z}                                                                  
    1                           {}                                                                       

-NoElement停止构建组内容,在这种情况下是多余的。