Cambie el nombre para mostrar de AD de Apellido, Nombre a Nombre Apellido

Cambie el nombre para mostrar de AD de Apellido, Nombre a Nombre Apellido

Mi organización quiere cambiar el formato del nombre para mostrar a Firstname Lastnameen lugar deLastname, Firstname

Ya cambio el formato para crear nuevos usuarios en la configuración de ADSI. Pero quiero cambiar el nombre para mostrar de todos los usuarios actuales aFirstname Lastname

Encontré un script en:Formato de nombre completo predeterminado en Active Directory

Get-ADUser -LDAPFilter "(&(objectCategory=person)(!displayName=*,*)(displayName=*))" |
ForEach-Object {  
    Set-ADUser $_ -DisplayName "$($_.Surname), $($_.givenName)"
}

Esto lo cambia de Firstname Lastnamea Lastname, Firstname. Quiero hacer lo contrario, así que modifico este script para:

Get-ADUser -LDAPFilter "(&(objectCategory=person)(!displayName=*,*)(displayName=*))" |
ForEach-Object {  
    Set-ADUser $_ -DisplayName "$($_.givenName) $($_.Surname)"
}

Pero mis usuarios de AD todavía tienen un nombre para mostrar como Lastname, Firstname. PD: no da ninguna advertencia ni error y actualizó AD.

¿Alguien conoce algún truco para cambiar a todos los usuarios de AD Firstname Lastnamecomo nombre para mostrar?

Respuesta1

El problema es el filtro. La cadena (!displayName=*,*)indica que sólo el usuario que actualmentenotienen un ,nombre en pantalla que debe cambiarse. Quieres lo inverso, por lo que debes eliminar el archivo !.

Get-ADUser -LDAPFilter "(&(objectCategory=person)(displayName=*,*))" |
ForEach-Object {  
    Set-ADUser $_ -DisplayName "$($_.givenName) $($_.Surname)"
}

información relacionada