compu2000
Goto Top

Werte in der ersten Spalte einer .txt entfernen

Guten Tag,

mit nachfolgendem Skript möchte ich gerne Werte in der erste Spalte einer .txt (processed.txt) entfernen:
(sozusagen alles vor dem Bindestrich (inkl. dem Bindestrich))


processed.txt

AB-123;123;123;
AB-124;123;123;

processed-01.txt

123;123;123;
124;123;123;

Skript

set "txtin=S:\USER-01\processed.txt"  
set "txtout=S:\USER-01\processed-01.txt"  
powershell -EP ByPass -C "(Get-Content '%txtin%') -Replace 'AB-' | Out-File '%txtout%'"  

Jedoch kommt es jetzt vor, dass sich die .txt Datei geändert hat und ich nicht nur die Werte (inkl. Bindestrich) vor dem ersten Bindestrich entfernen möchte, sondern ebenfalls auch die Werte (inkl. Bindestrich) nach dem zweiten Bindestrich:

processed.txt

AB-123-ABC;123;123;
AB-124-ABD;123;123;

processed-01.txt

ABC;123;123;
ABD;123;123;

Wie kann ich das besten anstellen? Die Anzahl der Zeichen vor dem Bindestrichen können variabel sein.

Content-Key: 612317

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

Ausgedruckt am: 28.03.2024 um 14:03 Uhr

Mitglied: TK1987
Lösung TK1987 12.10.2020 aktualisiert um 15:01:22 Uhr
Goto Top
Moin,

einfach den Replacestring mit Regex abändern
powershell -EP ByPass -C "(Get-Content '%txtin%') -Replace 'AB-([^-]+-)?' | Out-File '%txtout%'"  

Gruß Thomas