使用powershell获取广告组成员
我正在尝试使用powershell以以下格式导出组及其成员。 有人能帮帮我吗 CSV格式: 组名|成员 g1 M1 g1m2 g2 M1 g2 M2 g3 M1 我有CSV格式的输出,但我不能正确地将其拆分 第一行==使用powershell获取广告组成员,powershell,active-directory,Powershell,Active Directory,我正在尝试使用powershell以以下格式导出组及其成员。 有人能帮帮我吗 CSV格式: 组名|成员 g1 M1 g1m2 g2 M1 g2 M2 g3 M1 我有CSV格式的输出,但我不能正确地将其拆分 第一行==DN,成员,sAMAccountName 第二排== CN=DSO\u ALL\u**AMER\u Member\u P\u 17700,OU=PersonalGroups,DC=**,DC=**,DC=**,DC=**,DC=**,CN=M123456,OU=Personal,O
DN,成员,sAMAccountName
第二排==
CN=DSO\u ALL\u**AMER\u Member\u P\u 17700,OU=PersonalGroups,DC=**,DC=**,DC=**,DC=**,DC=**,CN=M123456,OU=Personal,OU=SG,OU=CS,DC=gbl,DC=**,DC=**,CN=M123458,OU=Personal,
OU=SG,OU=CS,DC=gbl,DC=**,DC=**,DC=**,DSO\U ALL-\U**\ U AMER\U成员\U P\U 17700
从第二行开始,我需要成员id和组名,即“M123456”和“M123458”
组名“DSO_ALL-\u**AMER_Member_P_17700”
Get-ADGroup | Get-ADGroupMember
是一个很好的开始,但是,Get-ADGroupMember
不会返回组标识,这在这里是非常需要的。因此,您需要一些预处理和后处理
$groups=get-adgroup -filter *
$data=@()
foreach ($group in $groups) {
$gid=$group.name
foreach ($member in (get-adgroupmember -id $group)) {
# now we have both group and member, make an object
$obj=new-object psobject
$obj | add-member -type noteproperty -name "Group Name" -value $gid
$obj | add-member -type noteproperty -name "Member" -value ($member.name)
$data+=$obj
}
}
$data | export-csv file.csv -notypeinformation -encoding utf8
然后解析正确准备的CSV。如果需要其他属性,请分别添加一行
$obj | add member-type noteproperty
Get-ADGroup | Get-ADGroupMember
是一个好的开始,但是,Get-ADGroupMember
不会返回组标识,这是您在这里非常需要的。因此,您需要一点le预处理和后处理
$groups=get-adgroup -filter *
$data=@()
foreach ($group in $groups) {
$gid=$group.name
foreach ($member in (get-adgroupmember -id $group)) {
# now we have both group and member, make an object
$obj=new-object psobject
$obj | add-member -type noteproperty -name "Group Name" -value $gid
$obj | add-member -type noteproperty -name "Member" -value ($member.name)
$data+=$obj
}
}
$data | export-csv file.csv -notypeinformation -encoding utf8
然后解析正确准备的CSV。如果需要其他属性,请分别添加一行$obj | add member-type noteproperty