Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

AD Anzeigenamen ändern per Powershell

Frage Microsoft Windows Server

Mitglied: Niggo55

Niggo55 (Level 1) - Jetzt verbinden

04.07.2014, aktualisiert 12:22 Uhr, 4313 Aufrufe, 5 Kommentare

Hallo zusammen,

ich habe nun die Aufgabe den Anzeigenamen von allen Mitarbeitern zu ändern.
Von "Vorname Nachname" auf "Nachname, Vorname"

Nun will ich nicht unbedingt 500 Konten händisch anfassen, sondern es entweder voll oder halb automatisiert erledigen.
Was ich versucht habe:
Set-Aduser <upnnamen> -displayname "<nachname, vorname>"
Dies funktioniert auch soweit. Aber es ist mühsehlig, da jedesmal der Nachname und der Vorname händisch eingegeben werden muss.
Ich würde den Vornamen und Nachnamen allerdings gerne aus dem AD als Variable o.Ä. übernehmen.

Und da komme ich nicht weiter.
Mein Ansatz war, der nicht funktioniert:
Set-AdUser <upnnamen> -displaynamen "$Lastname, $Firstname"

Hatt da jmd eine Idee?

Vielen Danke
MfG
Nico
Mitglied: Onitnarat
LÖSUNG 04.07.2014, aktualisiert um 12:22 Uhr
Hallo Nico,
so sollte es gehen, ist aber ungetestet und geht wegen "-Filter *" auf ALLE Useraccounts in Deinem AD los:
01.
$users = Get-ADUser -Filter * 
02.
 
03.
foreach ($user in $users) { 
04.
 
05.
    $firstname = $user.GivenName 
06.
    $lastname = $user.Surname 
07.
 
08.
    Set-ADUser -Identity $user.SamAccountName -DisplayName ($lastname+", "+$firstname) 
09.
 
10.
}
Gruß
Marcus
Bitte warten ..
Mitglied: colinardo
LÖSUNG 04.07.2014, aktualisiert um 12:22 Uhr
Hallo Nico,
Filtert in diesem Beispiel nur die User bei denen auch Vor- und Nachname existiert. Solltest du wenns geht auf eine OU oder einen Container begrenzen in der keine "Sonder"-Accounts liegen. So werden aber schon die meisten besonderen Accounts ausgefiltert.
01.
get-aduser -Filter * | ?{$_.Surname -ne $null -and $_.Givenname -ne $null} | %{set-aduser $_.SamAccountName -DisplayName "$($_.Surname), $($_.Givenname)"}
Grüße Uwe
Bitte warten ..
Mitglied: Niggo55
04.07.2014 um 12:07 Uhr
Hallo Uwe und Marcus,

vielen Dank für die Scripte und die schnelle Hilfe

Wenn ich das Script vom Marcus ausführe, erstellt er mir lediglich als Anzeigenamen ein Komma.

Gruß Nico
Bitte warten ..
Mitglied: colinardo
04.07.2014, aktualisiert um 12:23 Uhr
Zitat von Niggo55:
Wenn ich das Script vom Marcus ausführe, erstellt er mir lediglich als Anzeigenamen ein Komma.
Auf was für einem System fährst du das Script ?
Meins geht hier soweit einwandfrei auf einem Server 2008 R2. Das von Marcus funktioniert auch, bis auf wenn die Namen leer sind, dann wird bei seinem Script im Namen natürlich nur ein Komma aufgeführt !. Das wurde in meinem Script bereits berücksichtigt.

Grüße Uwe
Bitte warten ..
Mitglied: Niggo55
04.07.2014 um 12:22 Uhr
Hab mich beim schreiben vertippt, sorry.

Vielen Dank ihr spart mich Stunden monotone Arbeit.

Gruß Nico
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst "Konto unbekannt" auf AD-Clients per Powershell löschen (6)

Frage von rudeboy zum Thema Batch & Shell ...

Windows Userverwaltung
AD Gruppen per Powershell importieren (1)

Frage von renfud zum Thema Windows Userverwaltung ...

Batch & Shell
Powershell Skript Ändern - Mehrere Hotfix IDs finden (1)

Frage von pixel0815 zum Thema Batch & Shell ...

Windows Netzwerk
gelöst Powershell skript zum Auslesen der im AD angemeldeten User (2)

Frage von jan.kleinel zum Thema Windows Netzwerk ...

Neue Wissensbeiträge
Administrator.de Feedback

Umgangsformen auf der Seite

(3)

Information von Frank zum Thema Administrator.de Feedback ...

Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(10)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

Exchange Server
gelöst RU 17 Exchange 2010 . Erfahrungen? (11)

Frage von keine-ahnung zum Thema Exchange Server ...

Windows Server
Festplatten Ruhezustand Windows Server 2016 (10)

Frage von ahaeuser zum Thema Windows Server ...

Datenbanken
gelöst MySQL Zeiterfassungs-Problematik (wer ist eingecheckt) (9)

Frage von NativeMode zum Thema Datenbanken ...