Batch zum Auslesen einer Textdatei nach bestimmten Attributen
Hallo,
ich habe eine riesige Textdatei, in der über 10.000 Zeilen stehen. Innerhalb dieser Textdatei gibt es immer wiederkehrende Werte, die ich gerne in einer neuen Textdatei stehen haben möchte - diese müssen somit aus der Dstei extrahiert werden.
Als Beispiel:
Ich suche in der Datei das Wort „A“. Alles, was nach dem Wert „A“ in der Datei steht, soll in eine neue Textdatei geschrieben werden („A“ soll auch mit in die neue Datei). Es sollen solange alle Werte übertragen werden, bis das Wort „B“ erscheint.
Dann kommt eine ganze Menge Datenmüll und dann kommen wieder o.g. zum Tragen, die in die neue Datei unter den ersten übertragenen Wert geschrieben werden sollen.
Dies soll solange passieren, bis alle Werte mit „A“ in der Datei gefunden und übertragen wurden.
Kann mir hier jemand helfen?
ich habe eine riesige Textdatei, in der über 10.000 Zeilen stehen. Innerhalb dieser Textdatei gibt es immer wiederkehrende Werte, die ich gerne in einer neuen Textdatei stehen haben möchte - diese müssen somit aus der Dstei extrahiert werden.
Als Beispiel:
Ich suche in der Datei das Wort „A“. Alles, was nach dem Wert „A“ in der Datei steht, soll in eine neue Textdatei geschrieben werden („A“ soll auch mit in die neue Datei). Es sollen solange alle Werte übertragen werden, bis das Wort „B“ erscheint.
Dann kommt eine ganze Menge Datenmüll und dann kommen wieder o.g. zum Tragen, die in die neue Datei unter den ersten übertragenen Wert geschrieben werden sollen.
Dies soll solange passieren, bis alle Werte mit „A“ in der Datei gefunden und übertragen wurden.
Kann mir hier jemand helfen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 509577
Url: https://administrator.de/forum/batch-zum-auslesen-einer-textdatei-nach-bestimmten-attributen-509577.html
Ausgedruckt am: 28.04.2025 um 20:04 Uhr
4 Kommentare
Neuester Kommentar

Da hier keiner den Aufbau deiner Datei kennt, mach es gleich mit der Powershell und Regex dann ist das universell verwendbar:
Achtung beim Anpassen, das ist Regex-Syntax, Sonderzeichen die Literal gematcht werden sollen müssen mit Backslash escaped werden!
("WortA" = Anfangskennzeichen, "WortB" = Endkennzeichen)
$text = Get-Content "D:\datei.txt" -raw
[regex]::Matches($text,'(?is)WortA.*?(?=WortB)').Value | Set-Content "D:\ergebnis.txt"
Beispieltext:
("WortA" = Anfangskennzeichen, "WortB" = Endkennzeichen)Donec commodo eget felis sed vehicula.
Suspendisse pretium ultrices quam in iaculis.
Aliquam a vulputate nisl. Etiam quam nunc,
dictum ac nulla vel, posuere hendrerit metus. Quisque ante lacus,
adipiscing id elit vel, ornare consectetur nisi. Etiam pretium,
sapien vitae lobortis tempor, nibh justo cursus orci, non dapibus magna sapien quis enim.
Phasellus rutrum elit justo, id pellentesque magna tempus dapibus. Etiam sed augue eros.
Cras nec varius eros. Aenean sodales tincidunt dolor. Nunc ac metus tristique, porttitor justo eu,
luctus diam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
himenaeos. WortA Ut egestas libero quis velit volutpat, at scelerisque mauris porttitor.WortB
dsfölgk ödfglk df ölk df gkldf gdfsgdf f dfgddgsd
fgsdf gsdf gdfgdfgdfgdfg dsgsdfg
sd fgdfgd sfgdfg dfs
g dfgfg sdf gdf gdfg
dsf gd
fg fgdfg dsfg dfg
dsf gsdfg sdfg
df
gdsfg f
g d
fg
Donec commodo eget felis sed vehicula.
Suspendisse pretium ultrices quam in iaculis.
Aliquam a vulputate nisl. WortA Etiam quam nunc,
dictum ac nulla vel, posuere hendrerit metus. Quisque ante lacus,
adipiscing id elit vel, ornare consectetur nisi. Etiam pretium,
sapien vitae lobortis tempor, WortB nibh justo cursus orci, non dapibus magna sapien quis enim.
Phasellus rutrum elit justo, id pellentesque magna tempus dapibus. Etiam sed augue eros.
Cras nec varius eros. Aenean sodales tincidunt dolor. Nunc ac metus tristique, porttitor justo eu,
luctus diam. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
himenaeos. Ut egestas libero quis velit volutpat, at scelerisque mauris porttitor.
Ergebnis der Ausgabedatei:
WortA Ut egestas libero quis velit volutpat, at scelerisque mauris porttitor.
WortA Etiam quam nunc,
dictum ac nulla vel, posuere hendrerit metus. Quisque ante lacus,
adipiscing id elit vel, ornare consectetur nisi. Etiam pretium,
sapien vitae lobortis tempor,

Zitat von @SandyOne:
Könntest du mir sagen, woran das liegen könnte? Den Pfad habe ich entsprechend angepasst und als Testlauf habe ich dein o.g. genommen
Wir kennen deine Textdatei und deine Anpassung nicht! Klappt hier im Test.Könntest du mir sagen, woran das liegen könnte? Den Pfad habe ich entsprechend angepasst und als Testlauf habe ich dein o.g. genommen
Sicherstellen das eine aktuelle Powershell-Version installiert ist!