将广告组成员添加到广告组的CSV列表中



我有一个.csv文件中包含的广告安全组列表,以以下格式:

小组,groupName1,groupName2,GroupName3,

我想做的是将此.csv文件馈送到PowerShell脚本,因此它可以报告.CSV文件中列出的组的组成员资格(我不在乎递归组,因为我不don't有(。然后,脚本应将结果转储到进一步的.csv文件中。

因此,理想情况下,我希望最终.csv产生的脚本输出是类似的。

GroupName1,名称GroupName1,名称GroupName2,名称GroupName2,名称GroupName3,名称GroupName3,名称

你明白了。

我正在挣扎的是要使循环进行某种形式,以浏览.csv中的所有组并输出结果如上所示(groupName和user用户(。

$list = Import-Csv -Path C:tempADGroups.csv
foreach ($groups in $list) {
  $ADGroup = $groups.groupname
  Get-ADGroupmember -Identity $ADGroup | Get-ADUser -Property Name
  Export-Csv -Path "c:tempdump.csv"
} 

我已经看到了其他建议(请参见此处的示例(,但是这些没有从.csv文件中读取组。

您需要将组名称添加到输出中。我会使用计算的属性来执行此操作。您还需要将Export-Csv移动到循环外或使用-Append。如果没有,组将每次覆盖文件,它将仅包含最后一个组的结果。尝试以下操作:

Import-Csv -Path C:tempADGroups.csv | Foreach-Object { 
    $ADGroup = $_.Groups
    Get-ADGroupmember -identity $ADGroup | Select-Objects @{n="Groupname";e={$ADGroup}}, Name
} | Export-CSV -Path  "c:tempdump.csv" -NoTypeInformation

最新更新