cheffkoch
Goto Top

Per Batch eine Spalte mit Werten aus AD in eine CSV Datei einfügen - Powershell

Guten Tag zusammen,

ich habe eine CSV-Datei. Möchte diese mittels eines Powershell-Skripts um eine Spalte erweitern und mit Werten aus AD füllen, die mittels der Mail aus Spalte B verglichen und ausgefüllt werden soll.

Kann mir da jemand weiterhelfen?

Danke und schöne Grüße,

cheffkoch

Content-ID: 665578

Url: https://administrator.de/forum/per-batch-eine-spalte-mit-werten-aus-ad-in-eine-csv-datei-einfuegen-powershell-665578.html

Ausgedruckt am: 23.12.2024 um 19:12 Uhr

killtec
killtec 09.04.2021 aktualisiert um 11:11:39 Uhr
Goto Top
Hi,
was genau willst du denn für Attribute haben?
du kannst mittels
get-aduser -filter * | export-csv c:\temp\export.csv -encoding utf8
die User-Attribute auslesen (ungefiltert).

Gruß
cheffkoch
cheffkoch 09.04.2021 um 11:34:43 Uhr
Goto Top
Hallo,

danke aber das meinte ich nicht. Ich möchte eine csv importieren, diese um die Spalte Name erweitern. Mittels der AD soll nun anhand der Mail (die Mail steht bereits in der Zeile in der csv) der dazugehöhrige DisplayName in einer weiteren Spalte angezeigt werden.

Danke und Grüße!!!
killtec
killtec 09.04.2021 um 12:35:08 Uhr
Goto Top
So Richtig verstanden?
Du hast eiene Liste (CSV) mit Mailadressen der Mitarbeiter. Du willst das Attribut DisplayName anhand der Mailadresse herausfinden und in die selbe CSV speichern?
148121
148121 09.04.2021 aktualisiert um 15:59:43 Uhr
Goto Top
Spaltennamen und Dateinamen/OU etc. an Bedürfnisse anpassen ...
$csvpath = 'E:\test.csv'  
$csv = Import-CSV $csvpath -Delimiter ";"  
$csv | Add-Member -MemberType NoteProperty -Name 'Name' -Value '' -Force  
$users = Get-ADUser -Filter * -SearchBase 'OU=Blablub,DC=domain,DC=tld' -Properties *  
foreach ($user in $users){
    $csv | ?{$_.Mail -eq $user.Mail} | %{$_.Name = $user.DisplayName}
}
$csv | export-csv $csvpath -Delimiter ";" -NoType -Encoding UTF8  
cheffkoch
cheffkoch 09.04.2021 um 13:43:20 Uhr
Goto Top
Ja genau face-smile wäre dir wirklich sehr dankbar
cheffkoch
cheffkoch 09.04.2021 um 14:20:14 Uhr
Goto Top
Er fragt noch nach einem Value-Parameter?

Aber schonmal vielen lieben Dank!!!
148121
148121 09.04.2021 aktualisiert um 15:59:55 Uhr
Goto Top
Zitat von @cheffkoch:

Er fragt noch nach einem Value-Parameter?
Hatte ich nur in Zeile 3 vergessen, ist ergänzt ...
cheffkoch
cheffkoch 12.04.2021 aktualisiert um 11:29:02 Uhr
Goto Top
Danke, aber leider sieht es so aus als roliert er nicht mit durch die Schleife, er gibt immer nur einen gleichen Namen aus...

Wo könnte das Problem liegen?

Danke & schöne Grüße,

cheffkoch
148121
148121 12.04.2021 aktualisiert um 11:33:23 Uhr
Goto Top
Zitat von @cheffkoch:

Danke, aber leider sieht es so aus als roliert er nicht mit durch die Schleife, er gibt immer nur einen gleichen Namen aus...

Wo könnte das Problem liegen?
An einer falschen Anpassung deinerseits der Spaltennamen in Zeile 6 im Where-Object, funktioniert hier einwandfrei!
cheffkoch
cheffkoch 12.04.2021 um 13:30:06 Uhr
Goto Top
tatsächlich war hier noch ein Fehler,

Funktioniert, danke!!!!!!!!!


wenn ich zusätzlich noch ausgeben möchte, ob der User nicht Aktiv ist (Im AD als Feld "Enabled" als True oder eben inaktiv False) wie baue ich das noch ein? Also nur ob der User inaktiv ist (Enabled = False), nicht ausgeben ob er aktiv ist


Vielen lieben Dank wirklich!!!
148121
148121 12.04.2021 um 14:14:55 Uhr
Goto Top
Mit was nachdenken schaffst du das auch selbst face-wink. => Hausaufgabe.