Select Powershell引用表中的对象

Select Powershell引用表中的对象,select,powershell,group-by,Select,Powershell,Group By,我有一个脚本,我正在工作,将输出一个关键字搜索的所有文件名和行号 $Paths = gci . *.* -rec | where { ! $_.PSIsContainer } | resolve-path foreach($path in $Paths) { $ftp += Select-String -Path $Path -Pattern "FTP" } $ftpgroups = $ftp | select fileName,LineNumber | Format-Table -gr

我有一个脚本,我正在工作,将输出一个关键字搜索的所有文件名和行号

$Paths = gci . *.* -rec | where { ! $_.PSIsContainer } | resolve-path
foreach($path in $Paths)
{
    $ftp += Select-String -Path $Path -Pattern "FTP"
}
$ftpgroups = $ftp | select fileName,LineNumber | Format-Table -groupBy Filename
我决定使用ft-groupby,因为group对象无法正常工作。但是我需要一种方法来引用这个表,这样我就可以把它放到csv中。使用get member命令时,它只提供格式化属性。理想的输出是将1个文件名与一组文件行匹配。这样,我就可以将其与路径(组对象成功地工作在该路径上)相匹配。
如果我走错了方向,我愿意接受新的想法。在advanced中感谢您,希望它不会给您带来像我一样多的麻烦。

正如您所发现的,任何
Format-*
cmdlet的输出都是格式化对象。这些对象用于向控制台显示,而不是进一步操作。为此,您确实需要
组对象
。它在什么方面对你不起作用?我认为,这会起作用:

$ftpgroups = $ftp | Select Filename,LineNumber | Group Filename

分组后,使用
导出Csv
.Awesome。这对我很有效,谢谢你。我认为它没有正常工作,因为我试图先对它进行分组<代码>$ftpgroups=$ftp |组文件名|选择文件名,行号不起作用。谢谢你的帮助。