MercedesCR7 1 Geschrieben 9. Mai 2018 Melden Teilen Geschrieben 9. Mai 2018 Einen schönen Tag euch zusammen, ich habe eine ganz simple Frage, wie bekomme ich es hin das beim AD-Export die Daten ohne Anführungszeichen " markiert werden? Weil die Datenbank die wir haben damit nicht klar kommt. Eigentlich müsste es doch damit funktionieren | % { $_ -replace '"', ""} | leider aber nicht, was mach ich falsch? Hier mein Code: $OU_Liste= 'OU=Admin-User,OU=User,OU=SAFE,DC=domain,DC=SEC,DC=de', 'OU=International,OU=User,OU=SAFE,DC=domain,DC=SEC,DC=de', $AllList = Foreach($OU in $OU_Liste){ Get-ADUser -Filter 'objectClass -eq "user"' -Properties * -SearchBase $OU | Sort-Object surname | Select-Object -Property @{Name='personalnummer';Expression={$_.EmployeeID}},@{Name='name';Expression={$_.Name}},@{Name='vorname';Expression={$_.givenName}},@{Name='titel';Expression={$_.extensionAttribute2}} }$AllList | Export-Csv \\Security\Daten\IT\mitarbeiter.csv -NoTypeInformation -Encoding UTF8 -Delimiter ';'| % { $_ -replace '"', ""} Vielen Dank schonmal für eure Hilfe. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 9. Mai 2018 Melden Teilen Geschrieben 9. Mai 2018 Die Anführungszeichen sind im Standard für CSV quasi als Text-Erkenner festgelegt. Jedes Produkt, welches standard-konformes CSV verarbeiten kann, sollte damit umgehen können ... so wie die Powershell das macht. Dein Code kann so nicht funktionieren, weil Du die Anführungszeichen entfernen möchtest, obwohl die Datei schon geschrieben ist. Wenn es wirklich nicht anders geht, müsstest Du vielleicht die Daten mit Convertto-CSV ins CSV-Format umwandeln und vorm "wegschreiben" mit Out-File, die Gänsefüßchen entfernen. Ich würde mich aber eher mal mit dem "Lieferanten" eurer Datenbank unterhalten, warum kein standard-konformes CSV verarbeitet werden kann. Dieses "Gefrickel" macht Skripte nicht gerade robuster. 1 Zitieren Link zu diesem Kommentar
MercedesCR7 1 Geschrieben 9. Mai 2018 Autor Melden Teilen Geschrieben 9. Mai 2018 @BOfH_666 Könntest du es mir mal bitte mal zeigen wie ich das mache? Meinst du mitarbeiter.csv in mitarbeiter.txt umschreiben und dahinter |Convertto-CSV Und da hinter nochmal OutPutfile als befehl? Verstehe den Sinn nicht ganz, wäre sehr sehr nett, wenn du es mach demonstrieren könntest als beispiel. Zitieren Link zu diesem Kommentar
Dukel 455 Geschrieben 9. Mai 2018 Melden Teilen Geschrieben 9. Mai 2018 $AllList | ConvertTo-Csv ... | % { $_ -replace '"', ""} | Export-Csv ... Zitieren Link zu diesem Kommentar
MercedesCR7 1 Geschrieben 9. Mai 2018 Autor Melden Teilen Geschrieben 9. Mai 2018 Ach so, wenn ich den exportierte Datei nochmal in Excel als CSV abspeichere, dann sind die Anführungsstriche weg und die Datei ist somit korrekt. Also hat es mit dem Exportieren zu tun, also Convertto-CSV muss ich mit in den Script nehmen. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 9. Mai 2018 Melden Teilen Geschrieben 9. Mai 2018 Als Beispiel: (Get-Process -Name e* | ConvertTo-Csv -NoTypeInformation) -replace '"','' | Out-File -FilePath BlaKeks.csv -Encoding utf8 Zitieren Link zu diesem Kommentar
MercedesCR7 1 Geschrieben 9. Mai 2018 Autor Melden Teilen Geschrieben 9. Mai 2018 Danke euch, vorallem dir BOfH_666, ich werde es mal ausprobieren und melde mich wieder. Euch noch einen schönen Feiertag morgen. 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.