kwakS 10 Geschrieben 29. Januar 2009 Melden Teilen Geschrieben 29. Januar 2009 Hallo zusammen, ich habe ein kleines Script geschrieben, welches mir die Attribute von den ActiveDirectory Usern ausliest. Jetzt möchte ich diese gerne in eine CSV Datei exportieren. Mein Versuch: $users = [ADSI]"LDAP://$dn" foreach ($value in $properties) { $searcher.PropertiesToLoad.Add($value) } $result = $searcher.findall() foreach ($val1 in $result) { $val1.properties.sn | out-file -filepath C:\user.txt -encoding Default -append $val1.properties.sn | Export-Csv user.csv #$val1.properties.givenname | out-file -filepath C:\user.txt -encoding Default -append #$val1.properties.telephonenumber | out-file -filepath C:\user.txt -encoding Default -append #$val1.properties.title | out-file -filepath C:\user.txt -encoding Default -append #$val1.properties.department | out-file -filepath C:\user.txt -encoding Default -append Die Ausgabe in eine Textdatei funktioniert aber die Ausgabe in eine CSV nicht. folgendes steht in der CSV: #TYPE System.String Length 5 Kann mir da jemand weiterhelfen? Wenn gewünscht, kann ich auch das komplette Script online stellen. Zitieren Link zu diesem Kommentar
Cybquest 36 Geschrieben 29. Januar 2009 Melden Teilen Geschrieben 29. Januar 2009 Grad ergoogelt ;) Vielleicht hilfts weiter... What Can I Do With Windows PowerShell? Zitieren Link zu diesem Kommentar
kwakS 10 Geschrieben 29. Januar 2009 Autor Melden Teilen Geschrieben 29. Januar 2009 danke aber die tipps hatte ich auch schon mal ausprobiert ;) Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 29. Januar 2009 Melden Teilen Geschrieben 29. Januar 2009 Da ich auch probleme hatte mit den csv Dateien hab ich das manuel gemacht: "A`tB`tC`tD" | out-file file.csv -append foo | % { "$a`t$B`t$C`t$D" | out-file file.csv -append } Man kann `t (=tabulator) auch mit ; oder sonstigem ersetzen, aber da hat Excel "probleme" gemacht, da es per Default nur Tabellen mit Tabulator gleich auflöst. Sonst muss man über die funktion "Daten in Spalten" oder so ähnlich gehen und den Trenner auswählen. Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 29. Januar 2009 Melden Teilen Geschrieben 29. Januar 2009 Hi, ich habs mit den QuestExtensions probiert. Damit gehts recht bequem get-qaduser myuser1 |select-object name,description|export-csv -path C:\temp\user.csv für manche Properties wie pwdlastset musst du den Parameter -IncludeAllProperties noch setzen siehe PowerShell Commands (CMDLETs) for Active Directory by Quest Software Wenn du wünscht, dass wir dein Beispiel nachvollziehen, dann brauchen wir den ganzen Code. Aber bitte so parametrisiert, dass man bloss Username und evtl. Domainname in den ersten Zeilen anpassen muss. cu blub Zitieren Link zu diesem Kommentar
kwakS 10 Geschrieben 30. Januar 2009 Autor Melden Teilen Geschrieben 30. Januar 2009 Danke für die Hilfe und für das Beispiel von Dukel. Ich habe es dann zum Schluss auch mit dem QuestExtensions un der PowerGui gelöst. Danke nochmals. Zitieren Link zu diesem Kommentar
patricks82 10 Geschrieben 2. Februar 2009 Melden Teilen Geschrieben 2. Februar 2009 Auch wenn schon erledigt. Geht auch ohne die Extensions: $csv = @() $users = [ADSI]"LDAP://$dn" foreach ($value in $properties) { $searcher.PropertiesToLoad.Add($value) } $result = $searcher.findall() foreach ($val1 in $result) { $row = "" | sn, givenname, telephone, title, department $row.sn = $val1.properties.sn $row.givenname = $val1.properties.givenname $row.telephone = $val1.properties.telephonenumber $row.title = $val1.properties.title $row.department = $val1.properties.department $cvs += $row } $csv | export-csv "C:\users.txt" Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.