Text durchsuchen und in Text ausgeben
Hallo Zusammen,
ich habe ein kleines Problem mit einem textdatei
in der Datei stehen mehrere seriennummern
Textdatei 1.
zBsp.: Zeile1: auto x SN=xyz789879 doch kein Auto
Zeile2: auto y SN=abc123 kein Auto
Zeile3: auto x SN=lmn564 ist ein Auto
nun mein Problem ich würde gerne die Seriennummern aus der einen Textdatei kopieren und eine neue Textdatei erstellen wo nur die SN Nummern stehen. Die Seriennummern sind auch noch unterschiedlich groß
Bsp.
erstellte Textdatei:
SN=xyz789879
SN=abc123
SN=lmn564
ich habe es schon mit findstr Probiert aber der Kopiert mir ja die ganze zeile.
Ist das Problem überhaup per Batchdatei lösbar?
Danke schon mal im Vorraus.
ich habe ein kleines Problem mit einem textdatei
in der Datei stehen mehrere seriennummern
Textdatei 1.
zBsp.: Zeile1: auto x SN=xyz789879 doch kein Auto
Zeile2: auto y SN=abc123 kein Auto
Zeile3: auto x SN=lmn564 ist ein Auto
nun mein Problem ich würde gerne die Seriennummern aus der einen Textdatei kopieren und eine neue Textdatei erstellen wo nur die SN Nummern stehen. Die Seriennummern sind auch noch unterschiedlich groß
Bsp.
erstellte Textdatei:
SN=xyz789879
SN=abc123
SN=lmn564
ich habe es schon mit findstr Probiert aber der Kopiert mir ja die ganze zeile.
Ist das Problem überhaup per Batchdatei lösbar?
Danke schon mal im Vorraus.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 67613
Url: https://administrator.de/forum/text-durchsuchen-und-in-text-ausgeben-67613.html
Ausgedruckt am: 23.12.2024 um 00:12 Uhr
10 Kommentare
Neuester Kommentar
Moin Compane,
bitte in diesem Nebenarm des Forums nicht schreiben "Danke im Vorraus."
Eine Rückmeldung ist uns lieber.
Am CMD-Prompt:
Im Batch:
..und aufrufen mit
Grüße
Biber
bitte in diesem Nebenarm des Forums nicht schreiben "Danke im Vorraus."
Eine Rückmeldung ist uns lieber.
Am CMD-Prompt:
$cmd$for /f "tokens=3" %i in (snr.txt) do @echo %i
SN=xyz789879
SN=abc123
SN=lmn564
::FilterSN.bat
@for /f "tokens=3" %%i in (snr.txt) do @echo %%i
FilterSN >SNpur.txt
Grüße
Biber
Moin Compane,
>wie kann ich das in einer Batchdatei schreiben!
Falls Dich das "tokens=3" verwirrt hat:
Das extrahiert das 3. Token je Zeile. Und liest nicht nur die ersten 3 Zeilen.
Die Oneliner oben funktionieren auch mit 87600 Zeilen.
Grüße
Biber
>wie kann ich das in einer Batchdatei schreiben!
- Kaffee aufsetzen (2 Esslöffel je 1 Tasse)
- Kaffee trinken
- Meinen Kommentar oben nochmal lesen.
Falls Dich das "tokens=3" verwirrt hat:
Das extrahiert das 3. Token je Zeile. Und liest nicht nur die ersten 3 Zeilen.
Die Oneliner oben funktionieren auch mit 87600 Zeilen.
Grüße
Biber
Moin Compane,
okay, ich dachte, alle Zeilen in der Datei enthielten "SN=.."
Dann in der Tat noch ein Find/FindStr davorsetzen.
--> Am CMD-Prompt testen, ggf. als Batch übernehmen mit je zwei Prozentzeichen statt einem.
Oder ist der Aufbau der einzelnen Zeilen unterschiedlich (mal "SN=.." in der Mitte, mal am Ende..)??
Dann poste bitte mal 10 Originalzeilen.
Grüße
Biber
okay, ich dachte, alle Zeilen in der Datei enthielten "SN=.."
Dann in der Tat noch ein Find/FindStr davorsetzen.
for /f "tokens=3" %i in ('find /i "sn=" snr.txt') do @echo %i
Oder ist der Aufbau der einzelnen Zeilen unterschiedlich (mal "SN=.." in der Mitte, mal am Ende..)??
Dann poste bitte mal 10 Originalzeilen.
Grüße
Biber
Hallo Compane!
Für Deine Textdatei sollte es so gehen:
bzw für die Originaldatei Deines Kumpels (angenommener Dateiname: "c:\neu\original.html"):
Falls dort auch ein Filter gebraucht werden sollte, eben
Grüße
bastla
Für Deine Textdatei sollte es so gehen:
for /f "tokens=2 delims==" %i in ('find /i "SN=" c:\neu\test.txt') do @echo %i>>c:\neu\SN.txt
for /f "tokens=4 delims==" %i in (c:\neu\original.html) do @for /f "delims='" %s in ('@echo %i') do @echo %s>>c:\neu\SN2.txt
for /f "tokens=4 delims==" %i in ('findstr /i "file_id=" c:\neu\original.html') do @for /f "delims='" %s in ('@echo %i') do @echo %s>>c:\neu\SN2.txt
Grüße
bastla