我在使用 powershell 脚本从 AD 获取 ADGroups 时遇到了一些问题。我需要有关组名、组描述、组成员和组所有者的信息。
我已经写好了剧本
$GruppeMedlemmer = @()
$Groups = Get-ADGroup -Filter * -properties * -SearchBase "OU=butikk,OU=Grupper,OU=Costumer,DC=OO,DC=NN"
foreach ($g in $Groups) {
$members = $g | Get-ADGroupMember
foreach ($m in $members) {
$Info = New-Object psObject
$Info | add-member -MemberType NoteProperty -Name "GroupName" -Value $g.Name
$Info | add-member -MemberType NoteProperty -Name "Description" -Value $g.description
$Info | add-member -MemberType NoteProperty -Name "Member of" -Value $g.MemberOf
$Info | Add-Member -MemberType NoteProperty -Name "Member" -Value $m.name
$GruppeMedlemmer+= $Info
}
}
$GruppeMedlemmer | Sort-Object GroupName | Export-CSV C:\data\groupdist.csv -notype -Encoding unicode
该脚本给了我群组名称、群组描述和群组成员,但我不确定要添加什么才能获得群组所有者。
我可以添加新行“managedby”-Value $m.name 吗?我一定是写错了,因为当我尝试添加新行以获取 managedby 时,它只会失败。
有人可以帮助我以正确的方式在脚本中实现这一点吗?
谢谢你!
答案1
我可以添加新行“managedby”-Value $m.name 吗?
ManagedBy
是...的属性获取AD组所以在你的脚本中你必须使用$g.ManagedBy
$Info | Add-Member -MemberType NoteProperty -Name "ManagedBy" -Value $g.ManagedBy
顺便说一句,了解您使用的 PowerShell 版本会有所帮助。