我试图制作一个关于如何制作简单get-ADGroupMember
的脚本,但有几个显示的结果。上面的cmdlet可以显示的内容,即邮件' -attribute。
Get-ADGroupMember -identity "group-name one" -Recursive | Get-ADUser -property DisplayName | Select Name,DisplayName,mail
一个简单的解决方案是使用下面的代码,因为它显示了我想要的结果(我已经删除了输出中的敏感信息)。当我要向客户提供这些信息时,我想要更多"清洁"查看输出,上面的代码可以提供(用户友好)。如果不是因为它没有显示邮件属性,那么第一个输出正常工作。
Get-ADGroupMember -identity "avd-Barn- och utbildningskontoret" -Recursive | Get-ADUser -property mail
DistinguishedName :
Enabled : True
GivenName : Lisa
mail :
Name :
ObjectClass : user
ObjectGUID : 98cb2a62
SamAccountName :
SID : S-1-5-21
Surname : surname
UserPrincipalName :
有没有办法解决这个问题?
答案 0 :(得分:1)
这给了我想要的东西。这样,如果将来需要,我也可以同时添加几个组。
$arrResults = @()
foreach($varGroup in (Get-ADGroupMember -identity "groupname")){
foreach($varUser in (Get-ADUser $varGroup -properties mail | select SamAccountName, mail)){
foreach($varUsor in (Get-ADUser $varGroup -properties DisplayName | select DisplayName)){
$objResult = New-Object PSobject
$objResult | Add-Member -membertype NoteProperty -Name "SamAccountName" -Value $varUser.SamAccountName
$objResult | Add-Member -MemberType NoteProperty -Name "Mail" -Value $varUser.mail
$objResult | Add-Member -Membertype NoteProperty -Name "DisplayName" -Value $varUsor.DisplayName
$arrResults += $objResult
}
}
}
$arrResults
答案 1 :(得分:1)
最简单的方法是:
Get-ADGroupMember -Identity "group-name one" -Recursive | Get-ADUser -properties DisplayName,mail | Select Name,DisplayName,mail