Powershell 路径需要拆分成单独的行,而不是合并成一行

Powershell 路径需要拆分成单独的行,而不是合并成一行,powershell,csv,Powershell,Csv,我接近完成这项工作,但有一个问题。在CSV文件中,我需要将路径分成单独的行,而不是将所有路径都放在CSV的一个记录中 我的目标是清理多余的GPO。我需要从GPO备份中搜索xml文件并对其进行分析。如果我在两个或多个GPO中发现相同的自定义字符串,路径将显示哪个文件夹包含冗余字符串,并且可以合并GPO或将其中一个一起删除。有道理。。我希望 我在下面给出了一个输出示例: "Count","Paths","Line" "5","C:\Users\user\Desktop\GPO Backup\{

我接近完成这项工作,但有一个问题。在CSV文件中,我需要将路径分成单独的行,而不是将所有路径都放在CSV的一个记录中

我的目标是清理多余的GPO。我需要从GPO备份中搜索xml文件并对其进行分析。如果我在两个或多个GPO中发现相同的自定义字符串,路径将显示哪个文件夹包含冗余字符串,并且可以合并GPO或将其中一个一起删除。有道理。。我希望

我在下面给出了一个输出示例:

"Count","Paths","Line"   
"5","C:\Users\user\Desktop\GPO Backup\{FBF5B657-2B31-4046-9A08-406221481FE1}\gpreport.xml|C:\Users\user\Desktop\GPO Backup\{FD297204-7AAE-4A19-AC59-471D32FC34DC}\gpreport.xml|C:\Users\user\Desktop\GPO Backup\{FD6E7C80-5682-499A-A1B5-A38EF998BD3D}\gpreport.xml|C:\Users\users\Desktop\GPO Backup\{FE4AC515-9C11-40F0-9D2C-940C98CA4DDF}\gpreport.xml|C:\Users\user\Desktop\GPO Backup\{FE4E07F8-BFFB-455C-86FD-845EF5E473F4}\gpreport.xml","<?xml version=""1.0"" encoding=""utf-16""?>"

我在原始帖子@PetAm I中添加了脚本的目标,是否遗漏了什么?这些路径对于meDamn@Matt来说是独一无二的。。你是对的。。我注意到了。我将把标题改为我真正需要做的事情。块引号掩盖了第3列中匹配的行。这是一行很长的文字。我将其更改为代码格式,那么,预期的结果应该是什么样的呢?
$ht = @()
$files = Get-ChildItem -recurse -Filter gpreport.xml
$files
foreach ($file in $files)
    {
         $path = $file.FullName
    $lines = Get-Content $path
    foreach ($line in $lines)
    {
        if ($match = $ht | where { $_.line -EQ $line })
           { 
            $match.count = $match.count + 1
            $match.Paths += $path
        }
        else
        {
            $ht += new-object PSObject -Property @{
            Count = 1
            Paths = @(, $path)
            Line = $line
            }
        }
    }
}

$ht
$ht.GetEnumerator() |
select Count, @{ n = 'Paths'; e = { $_.Paths -join '|' } }, Line |
Export-Csv c:\temp\NLG_GPO_Sort.csv