alexsp27
Goto Top

Powershell: CSV einlesen - Spalte hinzufügen - Ausgeben

Hallo,

basierend auf einen älteren Eintrag hier im Forum möchte ich das Thema nochmal aufgreifen, da ich nicht weiter komme.

Problem: CSV-Dateien mit variablen Namen (Dateien liegen alle in einem Ordner) sollen eingelesen und mit einer zusätzlichen Spalte "Festschreibungskennzeichen" und mit dem Wert "0" befüllt werden. Die Dateien haben unterschiedliche anzahlen von Zeilen. Anschließend sollen die Dateien mit dem gleichen Dateinamen zzgl. eines Namenszusatzes in einem Unterordner ausgegeben werden.

Für den einfachen Aufbau funktioniert erstmal folgendes Skript:

$csv = Import-CSV 'C:\Users\asp\Desktop\Converter\DATEV-org.csv' -delimiter ';'  
$csv | add-member -MemberType NoteProperty -Name 'Festschreibungskennzeichen' -Value '0' -Force  
$csv | Export-CSV 'C:\Users\asp\Desktop\Converter\DATEV-kop.csv' -NoType -delimiter ';' -Encoding DEFAULT  

Frage: Wie bekomme ich das mehrfache einlesen und ausgeben der Variablen Dateinamen hin?

Danke für jede Hilfe

Content-Key: 595588

Url: https://administrator.de/contentid/595588

Printed on: April 24, 2024 at 00:04 o'clock

Mitglied: 145033
145033 Aug 12, 2020 updated at 14:45:24 (UTC)
Goto Top
$ordner = 'C:\Users\asp\Desktop\Converter'  
$subordner = join-path $ordner "MeinSubordner"  
$zusatz = '_Zusatz'  
if (!(Test-Path $subordner)){md $subordner -Force | out-null} 
ls $ordner -File -Filter *.csv | %{
    Import-CSV $_.FullName -Delimiter ";" | Select *,@{n='Festschreibungskennzeichen';e={0}} | export-csv (join-path $subordner ($_.Basename + $zusatz + $_.Extension)) -Delimiter ";" -Encoding UTF8 -NoType -verbose  
}
Member: Alexsp27
Alexsp27 Aug 13, 2020 at 05:38:13 (UTC)
Goto Top
Wow, das ging echt fix^^

Vielen Dank hat auf anhieb geklappt.