sp33dy
Goto Top

Wie bestimmte Stellen in Zeilen aus .txt entfernen

Hallo erstmal,

Ich habe eine Textdatei "xyz.txt" die folgendermaßen aufgebaut ist

abc d.e.f.g:h
abc d.e.f.g:h
abc d.e.f.g:h
...

abc steht für irgendeine beliebige Zahl mit immer verschiedenen Anzahl an Ziffern
dann 2 "leerzeichen" und d.e.f.g:h sind verschiedene IPs mit Port mit je unterschiedlichen Anzahl an Ziffern

Nun möchte ich aber die Zahl abc und die folgenden 2 "leerzeichen" löschen damit nur d.e.f.g:h übrig bleibt

Ist dies mit Batch oder irgendeinem Script zu bewerkstelligen und wenn ja wie, da die datei ca 2 Millionen Zeilen hat ist dies schwer per "Handarbeit zu erledigen.

MfG Sp33dy

Content-Key: 132280

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

Printed on: April 20, 2024 at 13:04 o'clock

Member: rubberman
rubberman Dec 26, 2009 at 12:50:43 (UTC)
Goto Top
Hallo Sp33dy,

teile jede Zeile bei den Leerzeichen und gib nur die 2. Hälfte aus.

Also etwa so:
@echo off &setlocal
set Quelle=xyz.txt
set Ziel=xyz_2.txt

type nul>"%Ziel%"  
for /f "usebackq tokens=1*" %%a in ("%Quelle%") do >>"%Ziel%" echo %%b  

Grüße
rubberman
Member: bastla
bastla Dec 26, 2009 at 12:51:54 (UTC)
Goto Top
Hallo Sp33dy und willkommen im Forum!

Unter der Annahme, dass es vor den beiden genannten Leerzeichen keine weiteren gibt, sollte das so (direkt von der Kommandozeile aus) gehen:
for /f "tokens=1*" %i in (xyz.txt) do @>>neu.txt echo %j
Um einen Batch daraus zu machen, %%i und %%j schreiben ...

Grüße
bastla

[Edit] @rubberman: OK, Du warst schneller - schöner ist Deine Lösung aber trotzdem ... face-wink [/Edit]
Member: Sp33dy
Sp33dy Dec 26, 2009 at 13:14:44 (UTC)
Goto Top
Danke rubberman

hat sehr geholfen