Powershell CSV Import
Hallo zusammen,
aktuell versuche ich via Powershell Benutzer inklusive Attribute Mail, vorname, name usw. per CSV in Gruppen zu schieben.
bisher muss die Gruppe jedoch im Powershellscript angegeben werden.
ich möchte jedoch da es sich um unterschiedliche Gruppen in dem CSV handelt das die Abfrage der Gruppe über die weitere Spalte erfolgt.
folgendes habe ich bereits versucht:
dabei erhalte ich noch folgenden fehler
kann mir jemand helfen
Grüße
Jannik
aktuell versuche ich via Powershell Benutzer inklusive Attribute Mail, vorname, name usw. per CSV in Gruppen zu schieben.
bisher muss die Gruppe jedoch im Powershellscript angegeben werden.
ich möchte jedoch da es sich um unterschiedliche Gruppen in dem CSV handelt das die Abfrage der Gruppe über die weitere Spalte erfolgt.
folgendes habe ich bereits versucht:
# Inhalt der CSV-Datei in Variable importieren
$users = Import-CSV C:\temp\groups.csv -Delimiter ";"
# Schleife zur Konfiguration der Benutzer pro Zeile
ForEach ($user in $users)
{
# VARIABLE = $Zeile der CSV-Datei.Spaltenname
$username = $user.Benutzername
$groupname = $user.Gruppe
# Benutzer zu Gruppe hinzufügen
Add-ADGroupMember -Identity $_ -Members "$username"
}
kann mir jemand helfen
Grüße
Jannik
Please also mark the comments that contributed to the solution of the article
Content-ID: 1699864958
Url: https://administrator.de/contentid/1699864958
Printed on: October 15, 2024 at 02:10 o'clock
19 Comments
Latest comment
Du meinst wohl $groupname.
# ...
# Benutzer zu Gruppe hinzufügen
Add-ADGroupMember -Identity $groupname -Members $username
Wie sieht denn deine CSV genau aus, entweder du verwendest den falschen Delimiter oder es gibt die Überschrift darin nicht (Tippfehler oder falsche Bezeichnung) oder das Feld ist eben leer wie die Fehlermeldung schon sagt. Lass dir einfach die Variablen auf der Konsole ausgeben dann siehst du was darin steht!
Ohh ich glaube der Delimiter bei Calc ist ein Komma
Natürlich sollte man das Teil vorher mit einem Editor öffnen und sich vergewissern! Wenn der tatsächlich ein Komma ist dann ist klar das es so nicht funktionieren kann weil dann die Import-CSV-Funktion die Felder nicht korrekt zuordnen kann und du musst beim Import-CSV den Delimiter anpassen...Zitat von @Jannik2018:
Ja daran lag es habt ihr Vorschläge wie ich dort noch weitere Attribute s.o. reinbekomme?
Wie meinen ? Einfach die Spalten hinzufügen die du brauchst, und dann benutzen und die Daten mit Set-ADUser dem User hinzufügen.Ja daran lag es habt ihr Vorschläge wie ich dort noch weitere Attribute s.o. reinbekomme?
Zitat von @149569:
Du meinst wohl $groupname.
Du meinst wohl $groupname.
# ...
# Benutzer zu Gruppe hinzufügen
Add-ADGroupMember -Identity $groupname -Members $username
Jo, hast recht. Asche auf mein Haupt -.-
Wenn du glaubst, der Delimiter ist ein Kommata (,). Warum steht dann in deinem Import-csv ein Semikolon (;)?
Tipp doch mal
ein und mach aus dem "Glauben" einfach "Wissen".
Tipp doch mal
Get-Content C:\temp\groups.csv
Und wenn dein Delimiter ein Tabulator gewesen wäre? Oder ein anderes? Die Auswahl ist ja nicht unbedingt klein. Willst du immer erst alle Varianten ausprobieren? Oder jedes Mal hier im Forum nachfragen, welches Zeichen es sein könnte? Das Öffnen der CSV-Datei mit einem Tabellenkalkulationsprogramm gibt dir keinen Aufschluss darüber, welcher Delimiter verwendet wurde.
Zitat von @Jannik2018:
Der User hat die Daten schon sie müssen ebenfalls importiert werden
Zitat von @149569:
Zitat von @Jannik2018:
Ja daran lag es habt ihr Vorschläge wie ich dort noch weitere Attribute s.o. reinbekomme?
Wie meinen ? Einfach die Spalten hinzufügen die du brauchst, und dann benutzen und die Daten mit Set-ADUser dem User hinzufügen.Ja daran lag es habt ihr Vorschläge wie ich dort noch weitere Attribute s.o. reinbekomme?
Der User hat die Daten schon sie müssen ebenfalls importiert werden
Na dann ran an die Buletten, das Handwerkszeug hast du ja nun dafür.
Bitte Thread dann auch schließen.
Zitat von @Jannik2018:
Der Thread kann noch nicht geschlossen werden, weil die Information der Erweiterung des Imports noch fehlt "Attribute Mail, vorname, name usw. per CSV in Gruppen zu schieben"
Ich hatte es jetzt mal mit weiteren Variablen versucht jedoch lassen diese sich nicht so einfach hinten anheften
Das ist ja auch völliger Blödsinn, sorry. aber wenn du mal minimal nachgedacht hättest, hätte es klick gemacht und du hättest gemerkt das das völlig falsche CMDLet dafür ist!! Du hast wohl eine ziemlich derbe Blockade, schau dir das verlinkte CMDLet oben an (Set-ADUser) damit macht man das Hinzufügen von Attributen zu einem User-Account und nicht mit Add-ADGroupMember, denn damit fügt man einzig und allen nur Mitglieder einer Gruppe hinzu keine Attribute!.Der Thread kann noch nicht geschlossen werden, weil die Information der Erweiterung des Imports noch fehlt "Attribute Mail, vorname, name usw. per CSV in Gruppen zu schieben"
Ich hatte es jetzt mal mit weiteren Variablen versucht jedoch lassen diese sich nicht so einfach hinten anheften
# VARIABLE = $Zeile der CSV-Datei.Spaltenname
$username = $user.Benutzername
$groupname = $user.Gruppe
$surname=$user.SurName
$mail=$user.Mail
# Benutzer zu Gruppe hinzufügen
Add-ADGroupMember -Identity $_ -Members "$username", "$mail", "surname"
}
Schau mal hier rein
Set-ADUser - Füllen des Felds "Location" funktioniert nicht
Da findest du ein fertiges Skript mit dem sich User-Attribute sicher aktualisieren lassen denn dabei gibt es ein paar Dinge zu beachten.
Was bedeutet für dich denn "Importieren"?? Das kann viel heißen, über nur verändert importieren oder neu erstellt importieren besteht ein großer Unterschied. Also bitte dein Vorhaben exakt erläutern, Danke!
Wenn du dagegen neue User in der Domäne erstellen willst dann musst du natürlich New-ADUser benutzen.
So langsam komme ich mir hier verkackeiert vor, mal ehrlich wenn man noch nicht mal die Links liest die man einem vorlegt geschweige denn eine eindeutige Vorhabensbeschreibung abliefern kann bin ich hier raus ... Freitag ist nun wirklich schon lange vorbei .
SetADUser erstellt nur einträge und importiert nichts
Erneut vollkommener Blödsinn wenn du dir die Doku zumindest mal angesehen hättest!! Es verändert die Attribute von bereits bestehenden User-Accounts und zwar nur die die du mit den Parametern angibst!Wenn du dagegen neue User in der Domäne erstellen willst dann musst du natürlich New-ADUser benutzen.
So langsam komme ich mir hier verkackeiert vor, mal ehrlich wenn man noch nicht mal die Links liest die man einem vorlegt geschweige denn eine eindeutige Vorhabensbeschreibung abliefern kann bin ich hier raus ... Freitag ist nun wirklich schon lange vorbei .