Textdateien automatisiert bereinigen und in neue Datei überführens mittel PS-Script
Hallo,
für die Dauerscripter sicher ein einfaches
Ich habe ein Verzeichnis in das Textdateien (z.B. 202106.txt) mit Daten für diesen Monat geschrieben werden, diese sollen zusammengeführt und als Exeldatenquelle genutzt werden.
Aufbau der Textdatei
Header 12 Zeilen sollen weg
Daten für spätere Exelverarbeitung
DatenA DatenB DatenC DatenD
aus den Dateien müssen immer die ersten 12 Zeilen raus und ggf Leerzeieln raus..
das bekomme ich mit
hin, aber für die automatisierung auf Dateiebene fehlt mir so ziemlich alles ...
Die Monatsdatei soll in ein Verzeichnis gelegt werden dann soll der Anwender ein Powershell script starten
die Originaldatei soll in ein Verzeichnis \Exportdaten verschoben werden
die aufbereitete Datei ohne die 12 Zeilen soll in ein Verzeichnis \RawDaten aus dem Originaldateinamen von z.B. 202106.txt soll dabei 202106raw.txt werden
aus dem Verzeichnis \RawDaten sollen nun alle Dateien in eine zusammengeführt werden, damit in Exel dann der gesamten Datenbestand weiterverarbeitet werden kann...
Soderl hoffe das war verständlich.
Beste Grüße
für die Dauerscripter sicher ein einfaches
Ich habe ein Verzeichnis in das Textdateien (z.B. 202106.txt) mit Daten für diesen Monat geschrieben werden, diese sollen zusammengeführt und als Exeldatenquelle genutzt werden.
Aufbau der Textdatei
Header 12 Zeilen sollen weg
Daten für spätere Exelverarbeitung
DatenA DatenB DatenC DatenD
aus den Dateien müssen immer die ersten 12 Zeilen raus und ggf Leerzeieln raus..
das bekomme ich mit
(gc $file | select -Skip 12 | ? {$_.trim() -ne "" } ) | sc $file
hin, aber für die automatisierung auf Dateiebene fehlt mir so ziemlich alles ...
Die Monatsdatei soll in ein Verzeichnis gelegt werden dann soll der Anwender ein Powershell script starten
die Originaldatei soll in ein Verzeichnis \Exportdaten verschoben werden
die aufbereitete Datei ohne die 12 Zeilen soll in ein Verzeichnis \RawDaten aus dem Originaldateinamen von z.B. 202106.txt soll dabei 202106raw.txt werden
aus dem Verzeichnis \RawDaten sollen nun alle Dateien in eine zusammengeführt werden, damit in Exel dann der gesamten Datenbestand weiterverarbeitet werden kann...
Soderl hoffe das war verständlich.
Beste Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 954597733
Url: https://administrator.de/contentid/954597733
Ausgedruckt am: 21.11.2024 um 19:11 Uhr
2 Kommentare
Neuester Kommentar
$source = "E:\Data\Quelle"
$exportdata = "E:\Data\Exportdaten"
$raw = "E:\Data\RawDaten"
Get-Childitem $source -File -Filter *.txt | %{
Get-Content $_.Fullname | select -Skip 12 | ?{$_ -notmatch '^\s*$'} | Set-Content "$raw\$($_.Basename)raw.txt"
$_ | move-item -Destination $exportdata
}
Get-Content "$raw\*.txt" | Set-Content "$raw\merged.txt"
$source = "E:\Data\Quelle"
$exportdata = "E:\Data\Exportdaten"
$raw = "E:\Data\RawDaten"
Get-Childitem $source -File -Filter *.txt | %{ Get-Content $_.Fullname | select -Skip 12 | ?{$_ -notmatch '^\s*$'} } | set-content "$raw\merged.txt"
move-item "$source\*.txt" -Destination $exportdata
aber für die automatisierung auf Dateiebene fehlt mir so ziemlich alles ..
Dann doch vielleicht erst mal etwas dazu lesenGet-Childitem
Move-Item
Foreach-Object