Batch: Bestimmte Zeile in Textdatein ausgeben?
Guten Tag,
so habe ich ein Programm und 2 Dateien. Das Programm soll in der Datei1 ein bestimmtes wort suchen und die zeile ausgeben, dann soll es noch mit der Zeilennummer das word in Datei2 mit ausgeben, sodass ich als ausgabe das Wort habe was in derDatei2 drin ist, aber in der selben Zeile wie in Datei1. Ich hoffe ihr könnt mir folgen und helfen, habe schon vieles getestet aber nichts funzt.
Bitte um hilfe.
Beispiele für die 2 Dateien:
Datei1:
Haus
Lampe
Tisch
Stuhl
Datei2:
Strom
PC
Bett
Kondom
Also angenommen ich suche in Datei 1 das wort tisch, dann soll die nummer 3 ausgegeben werden (Zeilenummer==3 bei Tisch) und später noch Bett in Datei2 (weil Zeilennumme==3 )
so habe ich ein Programm und 2 Dateien. Das Programm soll in der Datei1 ein bestimmtes wort suchen und die zeile ausgeben, dann soll es noch mit der Zeilennummer das word in Datei2 mit ausgeben, sodass ich als ausgabe das Wort habe was in derDatei2 drin ist, aber in der selben Zeile wie in Datei1. Ich hoffe ihr könnt mir folgen und helfen, habe schon vieles getestet aber nichts funzt.
Bitte um hilfe.
Beispiele für die 2 Dateien:
Datei1:
Haus
Lampe
Tisch
Stuhl
Datei2:
Strom
PC
Bett
Kondom
Also angenommen ich suche in Datei 1 das wort tisch, dann soll die nummer 3 ausgegeben werden (Zeilenummer==3 bei Tisch) und später noch Bett in Datei2 (weil Zeilennumme==3 )
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 359582
Url: https://administrator.de/contentid/359582
Ausgedruckt am: 25.11.2024 um 02:11 Uhr
4 Kommentare
Neuester Kommentar
Servus @TaubeTecInc und frohes neues Jahr.
Auch wenn das hier jetzt schon zum hundertsten mal durchgekaut wird (nächstes mal bitte Suchfunktion des Forums benutzen),
hier ausnahmsweise nochmal:
Grüße Uwe
Auch wenn das hier jetzt schon zum hundertsten mal durchgekaut wird (nächstes mal bitte Suchfunktion des Forums benutzen),
hier ausnahmsweise nochmal:
@echo off &setlocal enabledelayedexpansion
:: Datei 1
set "file1=C:\datei1.txt"
:: Datei 2
set "file2=C:\datei2.txt"
:: Suchwort
set "search=BlaBlaBlaBla"
:: Suche Wort in der ersten Datei und benutze gefundene Zeilennummer um die Zeile der zweiten Datei auszugeben
set "line="
for /f "tokens=1 delims=:" %%a in ('findstr /inc:"%search%" "%file1%"') do (set /a "num=%%a-1" &for /f "delims=" %%b in ('more +!num! "%file2%"') do if not defined line set "line=%%b")
::Zeile ausgeben
echo(%line%
@colinardo:
Das bedingt aber, daß der Fragende weiß nach was er suchen muss.
Und das er sich die Mühe macht, zu suchen.
Leider ist es o, daß man lieber eine neue Frage stellt, welche schon mehrfach behandelt wurde, anstatt die Suchfunktion zu nutzen.
Gruss Penny
Das bedingt aber, daß der Fragende weiß nach was er suchen muss.
Und das er sich die Mühe macht, zu suchen.
Leider ist es o, daß man lieber eine neue Frage stellt, welche schon mehrfach behandelt wurde, anstatt die Suchfunktion zu nutzen.
Gruss Penny
Etwas Flexibilität und Eigeninitiative schadet nicht. Das heißt, versuche die ähnlichen Lösungen zu verstehen und auf DEINE Frage umzusetzen. Wenn es nicht funktioniert, oder Du es nicht verstehst, was genau bei den ähnlichen Lösungen gemeint wird, dann kann man nachfragen - kein Thema.
Aber Du solltest uns auch DEINE Bemühungen zeigen und nicht darauf hoffen, daß hier im Forum irgendjemand für Dich die Lösung erstellt.
Hier im Forum bekommst Du Hilfe auf freiwilliger Basis. D.h. man sollte auch selbst die Initiative ergreifen und nicht einfach auf DIE Lösung warten bzw darauf hoffen irgendjemand im Forum soll's für mich machen.
So läuft / funktioniert das nicht. Auch nicht im realen Arbeitsleben.
Geben und nehmen, miteinander und nicht machen lassen, ist das Motto.
Gruss Penny
Aber Du solltest uns auch DEINE Bemühungen zeigen und nicht darauf hoffen, daß hier im Forum irgendjemand für Dich die Lösung erstellt.
Hier im Forum bekommst Du Hilfe auf freiwilliger Basis. D.h. man sollte auch selbst die Initiative ergreifen und nicht einfach auf DIE Lösung warten bzw darauf hoffen irgendjemand im Forum soll's für mich machen.
So läuft / funktioniert das nicht. Auch nicht im realen Arbeitsleben.
Geben und nehmen, miteinander und nicht machen lassen, ist das Motto.
Gruss Penny