Powershell 是否有方法将ForEach循环中的变量导出到每行的CSV输出

Powershell 是否有方法将ForEach循环中的变量导出到每行的CSV输出,powershell,Powershell,我正试图对我们的广告运行一个脚本,为列表中的所有组吐出组中的广告用户。基本上是试图审核组以查找用户。我有一个运行脚本,除了我无法确定一个组的输出何时结束,下一个组的输出从何处开始 我曾尝试寻找前面的示例,但没有一个完全符合我使用的方法,我只是将脚趾伸进powershell,无法将其他示例与我自己的示例结合起来 $groups = Get-Content "C:\Folder\File_with_lines_of_ADGroup_Names.txt" foreach ($group in $gr

我正试图对我们的广告运行一个脚本,为列表中的所有组吐出组中的广告用户。基本上是试图审核组以查找用户。我有一个运行脚本,除了我无法确定一个组的输出何时结束,下一个组的输出从何处开始

我曾尝试寻找前面的示例,但没有一个完全符合我使用的方法,我只是将脚趾伸进powershell,无法将其他示例与我自己的示例结合起来

$groups = Get-Content "C:\Folder\File_with_lines_of_ADGroup_Names.txt" 
foreach ($group in $groups) { Get-ADGroupMember -Identity "$group" | Where-Object { $_.ObjectClass -eq "user" } | Get-ADUser -Property Description,DisplayName | Select Name,DisplayName,Description,$group | Export-csv -append -force -path "C:\Folder\File_of_outputs.csv" -NoTypeInformation }
现在的问题在于获取要导出的$group变量以及返回的每个用户的名称、显示名称和描述。这是我能想到的标记每个用户组并将所有结果保存在单个文件中的最佳方法。但是,只有结果的第一行起作用,即CSV的标题,它后面的所有内容要么列为“Microsoft.ActiveDirectory.Management.ADPropertyValueCollection”,要么在第一组结果后为空

希望有人能告诉我如何轻松地将变量$group添加到每个用户的输出中,以便进行筛选/数据透视


谢谢,如果您有问题,请告诉我。

我相信您想要的是您的
select
语句中的计算属性

Select Name,DisplayName,Description,$group
应该是这样的

Select Name,DisplayName,Description,@{n='Group'; e={$group};}

另请参见

我相信您所追求的是您的
select
语句中的计算属性

Select Name,DisplayName,Description,$group
应该是这样的

Select Name,DisplayName,Description,@{n='Group'; e={$group};}

另请参见

这正是我想要的。在我寻找答案的过程中,我看到过类似的语法,但不知道它叫什么,也不知道如何根据我的需要构建它。欣赏答案和引用,这样我就可以学习,而不仅仅是复制。这正是我所寻找的。我在寻找答案的过程中看到过类似的语法,但不知道它叫什么,也不知道如何根据我的需要构建它。欣赏答案和引用,这样我就可以学习,而不仅仅是复制。