TXT Datei getrennt durch HOCHKOMMA SUCHEN ERSETZEN an neuem Ort unter gleichem Namen speichern
Aloha liebe Community,
eine ABAP Anwenderin wendet sich heute an euch, weil sie mit ihrem Latein am Ende ist ;)
Ich soll ein Migrationsprojekt betreuen bei welchem nach Abschaltung des ABAP System hunderte von UFT-8 codierte .txt Dateien erzeugt werden.
Der Inhalt dieser Dateien ist durch ' getrennt.
Im "normalen" Leben würde ich jetzt diese .txt Dateien manuell ins NOTEPAD ++ schieben und mit
SUCHEN + ERSETZEN - ' durch \n ersetzen an einem neuen Ort unter dem gleichen Namen speichern und dann diesen Ordner nach dem STRING mit STS+7++E01 durchsuchen.
Dummerweise erwarte ich an der Stelle, dass mehrere hundert Dateien im IMPORT geben wird, so das es quasi nach einer maschinellen Lösung schreit.
Ein paar Dutzend würde ich ja immer noch manuell machen wollen, aber bei der erwarteten Menge .... *UFF* wirds schwierig.
In Ordner IMPORT werden diese Dateien liegen und sollten nach dem STRING 'STS+7++E01' durchsucht werden,
wenn dieser gefunden wird, sollte in dieser Datei das ' durch einen Zeilenumbruch \n ersetzt werden und diese Datei im neuen Ordner OUTPUT mit dem gleichen Namen wie die Ursprungsdatei mit den Zeilenumbrüchen gespeichert werden.
Habt ihr eine schlaue WINDOWS Idee für mich, wie man das mit möglichst wenig Programmieraufwand realisieren könnte ?
Ich hab versucht mich durch die Forensuche zu wühlen, komme aber nicht wirklich zu einem Ergebnis, wie ich die Suche innerhalb der Datei nach dem String und dem Ersetzen sowie dem Speichern der Gesamten Datei unter dem gleichem Namen wie die Ursprungsdatei an einem neuen Ort realisieren kann.
Wenn mein ABAP System noch am Leben wäre und nicht im Archivmodus, dann würde ich die Dateien einfach einlesen, den String suchen und dann die notwendigen Daten in eine neue Tabelle schubsen ... das fällt aber leider durch den Archivmodus komplett aus
Ich hoffe ihr habt eine Idee ob und wie sich so was - am besten ohne Admin Rechte - im Windows realisieren lassen würde ?
Lieblichsten Gruß
Micki
eine ABAP Anwenderin wendet sich heute an euch, weil sie mit ihrem Latein am Ende ist ;)
Ich soll ein Migrationsprojekt betreuen bei welchem nach Abschaltung des ABAP System hunderte von UFT-8 codierte .txt Dateien erzeugt werden.
Der Inhalt dieser Dateien ist durch ' getrennt.
Im "normalen" Leben würde ich jetzt diese .txt Dateien manuell ins NOTEPAD ++ schieben und mit
SUCHEN + ERSETZEN - ' durch \n ersetzen an einem neuen Ort unter dem gleichen Namen speichern und dann diesen Ordner nach dem STRING mit STS+7++E01 durchsuchen.
Dummerweise erwarte ich an der Stelle, dass mehrere hundert Dateien im IMPORT geben wird, so das es quasi nach einer maschinellen Lösung schreit.
Ein paar Dutzend würde ich ja immer noch manuell machen wollen, aber bei der erwarteten Menge .... *UFF* wirds schwierig.
In Ordner IMPORT werden diese Dateien liegen und sollten nach dem STRING 'STS+7++E01' durchsucht werden,
wenn dieser gefunden wird, sollte in dieser Datei das ' durch einen Zeilenumbruch \n ersetzt werden und diese Datei im neuen Ordner OUTPUT mit dem gleichen Namen wie die Ursprungsdatei mit den Zeilenumbrüchen gespeichert werden.
Habt ihr eine schlaue WINDOWS Idee für mich, wie man das mit möglichst wenig Programmieraufwand realisieren könnte ?
Ich hab versucht mich durch die Forensuche zu wühlen, komme aber nicht wirklich zu einem Ergebnis, wie ich die Suche innerhalb der Datei nach dem String und dem Ersetzen sowie dem Speichern der Gesamten Datei unter dem gleichem Namen wie die Ursprungsdatei an einem neuen Ort realisieren kann.
Wenn mein ABAP System noch am Leben wäre und nicht im Archivmodus, dann würde ich die Dateien einfach einlesen, den String suchen und dann die notwendigen Daten in eine neue Tabelle schubsen ... das fällt aber leider durch den Archivmodus komplett aus
Ich hoffe ihr habt eine Idee ob und wie sich so was - am besten ohne Admin Rechte - im Windows realisieren lassen würde ?
Lieblichsten Gruß
Micki
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 43049273055
Url: https://administrator.de/forum/txt-datei-getrennt-durch-hochkomma-suchen-ersetzen-an-neuem-ort-unter-gleichem-namen-speichern-43049273055.html
Ausgedruckt am: 05.05.2025 um 16:05 Uhr
7 Kommentare
Neuester Kommentar

Powershell z.B.
Gruß siddius
$source = "D:\import"
$destination = "D:\output"
foreach($file in Select-String -Path "$source\*.txt" -Pattern "STS+7++E01" -SimpleMatch | select -ExpandProperty Path){
(Get-Content $file -Raw) -replace "'","`r`n" | set-content "$destination\$([IO.Path]::GetFileName($file))"
}

Leider funktionierte sie bei mir nicht. Ich kann das Ganze zwar mit Powershell ausführen, aber im OUTPUT Ordner kommt nichts an.
Das schreit nach der Powershell ExecutionPolicyStarte das Skript in einer CMD mittels
powershell -EP Bypass -File "D:\Ordner\script.ps1"
Ansonsten ist der Pattern "STS+7++E01" nicht exakt oder euer Admin die Ausführung von Powershell Skripten verboten.
p.s. dein Skript hat den Pattern "STS+7++E03" mit einer 3 am Ende nicht wie du oben geschrieben hast mit einer 1