Как прокомментировано, лучше не использовать свойство Name
, но если оно у вас есть, используйте SamAccountName
или DistinguishedName
пользователя, которого вы пытаетесь исключить неоднозначные имена.
$user = Get-ADGroupMember -Identity 'GroupName' |
Where-Object { $_.objectClass -eq 'user' -and $_.SamAccountName -eq 'userSamAccountName' } |
Get-ADUser -Properties DisplayName, EmailAddress, GivenName, Surname # add more properties if you need them
# display the user object on screen
$user
Или сделать так:
$user = $null
$member = Get-ADGroupMember -Identity 'TheGroupName' |
Where-Object { $_.objectClass -eq 'user' -and $_.SamAccountName -eq 'TheuserSamAccountName' }
if ($member) {
# add more properties if you need them
$user = Get-ADUser -Identity $member.DistinguishedName -Properties DisplayName, EmailAddress, GivenName, Surname
}
else {
Write-Host "User 'TheuserSamAccountName' is not a member of group 'TheGroupName'"
}
# display the user object on screen
$user
Полученный объект $user
также будет содержать эти свойства:
DistinguishedName
, Enabled
, Name
, ObjectClass
, ObjectGUID
, SamAccountName
, SID
, UserPrincipalName
Если вам не нужны все эти свойства, просто отфильтруйте их, используя
$user | Select-Object DisplayName, EmailAddress, GivenName, Surname