Meine Organisation möchte das Anzeigenamenformat ändern in Firstname Lastname
stattLastname, Firstname
Ich habe das Format zum Erstellen neuer Benutzer bereits in den ADSI-Einstellungen geändert. Ich möchte aber den Anzeigenamen aller aktuellen Benutzer ändern inFirstname Lastname
Ich habe ein Skript gefunden in:Standardmäßiges vollständiges Namensformat in Active Directory
Get-ADUser -LDAPFilter "(&(objectCategory=person)(!displayName=*,*)(displayName=*))" |
ForEach-Object {
Set-ADUser $_ -DisplayName "$($_.Surname), $($_.givenName)"
}
Dies ändert es von Firstname Lastname
in Lastname, Firstname
. Ich möchte es umgekehrt machen, also passe ich dieses Skript wie folgt an:
Get-ADUser -LDAPFilter "(&(objectCategory=person)(!displayName=*,*)(displayName=*))" |
ForEach-Object {
Set-ADUser $_ -DisplayName "$($_.givenName) $($_.Surname)"
}
Aber meine AD-Benutzer haben immer noch einen Anzeigenamen wie Lastname, Firstname
. PS, geben keine Warnungen oder Fehler aus und haben eine Aktualisierung in AD durchgeführt.
Kennt jemand einen Trick, um Firstname Lastname
den Anzeigenamen aller AD-Benutzer zu ändern?
Antwort1
Das Problem ist der Filter. Die Zeichenfolge (!displayName=*,*)
gibt an, dass nur Benutzer, die derzeitnichthaben ein ,
in ihrem Anzeigenamen sollte geändert werden. Sie möchten das Gegenteil, also müssen Sie das entfernen !
.
Get-ADUser -LDAPFilter "(&(objectCategory=person)(displayName=*,*))" |
ForEach-Object {
Set-ADUser $_ -DisplayName "$($_.givenName) $($_.Surname)"
}