String in .txt Datei mittels batch suchen und Errorlevel setzen
Hallo zusammen,
ich möchte in einer (oder mehreren) Text Dateien nach einem bestimmten Inhalt suchen.
Wenn dieser nicht gefunden wird soll das "Errorlevel==0 sein) wird dieser gefunden möchte ich ein "Errorlevel" definieren.
Ich denke findstr ist hier richtig jedoch finde ich hier nur "hochkomplexe"-Beispiele die ich nicht ganz verstehe und deshalb nicht auf mein Problem ummünzen kann.
Das mit dem Errorlevel krieg ich vllt. auch selbst hin wenn ich einen Code für findstr habe.
Vielen Dank schonmal
ich möchte in einer (oder mehreren) Text Dateien nach einem bestimmten Inhalt suchen.
Wenn dieser nicht gefunden wird soll das "Errorlevel==0 sein) wird dieser gefunden möchte ich ein "Errorlevel" definieren.
Ich denke findstr ist hier richtig jedoch finde ich hier nur "hochkomplexe"-Beispiele die ich nicht ganz verstehe und deshalb nicht auf mein Problem ummünzen kann.
Das mit dem Errorlevel krieg ich vllt. auch selbst hin wenn ich einen Code für findstr habe.
Vielen Dank schonmal
Please also mark the comments that contributed to the solution of the article
Content-Key: 189165
Url: https://administrator.de/contentid/189165
Printed on: April 19, 2024 at 22:04 o'clock
2 Comments
Latest comment
Hallo gerddasboot, hallo bastla!
* * * Glaskugel ein * * *
test.txt
*.bat
* * * Glaskugel aus * * *
Mit
Grüße
rubberman
* * * Glaskugel ein * * *
test.txt
Lorem ipsum dolor sit amet,
consetetur sadipscing elitr,
sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum.
Stet clita kasd gubergren,
no sea takimata sanctus est Lorem ipsum dolor sit amet.
*.bat
@echo off &setlocal
call :count_found_lines "test.txt" "sit amet"
echo Found %errorlevel% line(s).
pause
goto :eof
:count_found_lines "filename" "string"
setlocal DisableDelayedExpansion
set /a n=0
for /f "delims=:" %%i in ('findstr /c:"%~2" "%~1"') do set /a n+=1
endlocal &exit /b %n%
* * * Glaskugel aus * * *
Mit
findstr
kannst du die Zeilen (alternativ die Dateien) finden, die eine Zeichenfolge enthalten. Mittels exit /b
lässt sich zB. aus einer Subroutine heraus ein Errorlevelwert definieren.Grüße
rubberman