我尝试用谷歌搜索不同的东西,但我似乎找不到答案。
CSV 内容
"ColumnOne","ColumnTwo","ColumnThree"
"C1V1","C2V1","C3V1"
"C1V2","C2V2","C3V2"
"C1V2","C2V2","C3V2"
"C1V3","C2V3","C3V3"
代码
$input = 'C:\Temp\test.csv'
$inputCsv = Import-Csv $input | Select-Object -Unique
$inputCsv | Export-Csv "$input-temp.csv" -NoTypeInformation
#Move-Item "$input-temp.csv" $input -Force
输出
"ColumnOne","ColumnTwo","ColumnThree"
"C1V2","C2V2","C3V2"
预期输出
"ColumnOne","ColumnTwo","ColumnThree"
"C1V1","C2V1","C3V1"
"C1V2","C2V2","C3V2"
"C1V3","C2V3","C3V3"
有办法吗?
最佳答案
您需要使用 Select-Object 或 Sort-Object 指定列名称以获得唯一结果。如果您也想排序,请尝试以下代码。如果您不想,请使用 Select-Object。
$input = 'C:\Temp\test.csv'
$inputCsv = Import-Csv $input | Sort-Object * -Unique
$inputCsv | Export-Csv "$input-temp.csv" -NoTypeInformation
您也可以引用博客HERE .
关于powershell - 仅从 csv 文件中删除重复记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36921523/