Ändern Sie den AD-Anzeigenamen von Nachname, Vorname in Vorname Nachname

Ändern Sie den AD-Anzeigenamen von Nachname, Vorname in Vorname Nachname

Meine Organisation möchte das Anzeigenamenformat ändern in Firstname LastnamestattLastname, 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 Lastnamein 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 Lastnameden 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)"
}

verwandte Informationen