epicenter

Aus Textfile erste Zeile in Variable schreiben und diese auf Schlagwort untersuchen

Hallo zusammen!
Ich habe ein kleines Problem und komme nicht mehr weiter! Ich habe ein Textfile von welchem ich nur die erste Zeile benötige! Daher wollte ich diese erste Zeile in eine Variable speichern um diese danach auf ein Schlagwort mit "findstr" untersuchen zu lassen. Wird das Schlagwort gefunden soll einfach ein Status z.B. "gefunden" oder "nichtgefunden" in ein weiteres Textfile geschrieben werden!
Hat jemand von Euch eine Idee wie man das umsetzen könnte?
Vielen Dank!
Martin
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 195294

Url: https://administrator.de/forum/aus-textfile-erste-zeile-in-variable-schreiben-und-diese-auf-schlagwort-untersuchen-195294.html

Ausgedruckt am: 08.06.2025 um 07:06 Uhr

Friemler
Friemler 03.12.2012 um 23:50:11 Uhr
Goto Top
Hallo Martin,

das könnte so gehen:
@echo off & setlocal

set "InFile=Eingabedatei"  
set "OutFile=Ausgabedatei"  
set "SearchString=Suchbegriff"  

set /p "FirstLine=" < "%InFile%"  

set /p "=%FirstLine%" < NUL | findstr /i "%SearchString%" > NUL && (  
  >"%OutFile%" echo Gefunden  
) || (
  >"%OutFile%" echo Nicht gefunden  
)

  • Die Variablen in den Zeilen 3 bis 5 bitte anpassen.
  • Falls Groß-/Kleinschreibung beachtet werden soll, bitte den Parameter /i beim FINDSTR-Befehl in Zeile 9 entfernen.
  • Die Ausgabedatei wird jedesmal überschrieben. Um die Ausgabe nur anzuhängen das >-Zeichen in den Zeilen 10 und 12 jeweils durch >> ersetzen.

Gruß
Friemler
EPICENTER
EPICENTER 04.12.2012 um 01:07:28 Uhr
Goto Top
Danke für die schnelle Antwort - die erste Zeile bekommt er damit sauber!
Doch bei der Auswertung bleibt er noch irgendwie hängen!
Habs dann über die Errorlevel versucht - doch auch gescheitert!
Noch nen Tipp?
pieh-ejdsch
pieh-ejdsch 04.12.2012 um 11:57:30 Uhr
Goto Top
moin EPICENTER,

eine Alternative wäre in etwa als Test auf der CMD-Line mit verzögerter Variablenauflösung:
> echo testZeichenfolge>Eingabedatei

> echo tesnull2>>Eingabedatei

> for /f "tokens=1-3 delims=/" %A in ("EingabeDatei/Ausgabe/testZeichenfolge") do @set /p L1=<"%~A" &cmd /von /c "echo !L1!"|find "%~C" &&echo Gefunden.>"%~B" ||echo Nicht gefunden!>"%~B"  
testZeichenfolge

> type ausgabe
Gefunden.

Gruß Phil