Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 合并多个文件中的所有内容,找到匹配的字符串,并获得每行的计数_Powershell_Text_Powershell 2.0 - Fatal编程技术网

Powershell 合并多个文件中的所有内容,找到匹配的字符串,并获得每行的计数

Powershell 合并多个文件中的所有内容,找到匹配的字符串,并获得每行的计数,powershell,text,powershell-2.0,Powershell,Text,Powershell 2.0,我知道如何获取数据并使用某种模式进行搜索。但这不是我需要的 Get-ChildItem -recurse -Filter *.xml | Get-Content | Select-String -pattern "something here" 我正在搜索100个GPO xml文件,我们正在尝试删除一遍又一遍执行相同操作的GPO。我想找到独特的价值观,并结合在一个大的快乐gpo他们,并摆脱所有多余的 我的目标是: 1) 从100个子文件夹的所有*.xml文件中获取所有信息,并将它们合并到一

我知道如何获取数据并使用某种模式进行搜索。但这不是我需要的

Get-ChildItem -recurse -Filter *.xml | Get-Content | Select-String -pattern "something here"  
我正在搜索100个GPO xml文件,我们正在尝试删除一遍又一遍执行相同操作的GPO。我想找到独特的价值观,并结合在一个大的快乐gpo他们,并摆脱所有多余的

我的目标是:

1) 从100个子文件夹的所有*.xml文件中获取所有信息,并将它们合并到一个文件中

2) 查找包含相同字符串的所有行并获取该字符串的计数。我需要对组合文件中的所有字符串进行计数


3) 我的目标是找到唯一的行并将它们保存到文件中,以供进一步使用

这里有一个使用
哈希表的快速而肮脏的方法。由于
哈希表
setter执行“更新或创建”,您将得到一个不同的列表:

$ht=@{}
Get-ChildItem-recurse-Filter*.xml | Get-Content |%{$ht[$\]=$true}
$ht.Keys
编辑:刚刚看到你也想要计数。您可以这样做:

$ht=@{}
Get-ChildItem-recurse-Filter*.xml | Get-Content |%{$ht[$\]=$ht[$\]+1}
$ht
要导出到CSV,请执行以下操作:

$ht.GetEnumerator()|选择键,值|导出Csv D:\output.Csv

谢谢Jon!现在你能告诉我如何将这个导出到csv文件吗?没问题。在我的答案中添加了csv输出。谢谢您,先生!正是我想要的。