flolin
Goto Top

Logfiles mittels Batch prüfen und Warnung per Mail

Hey Leute, bräuchte bitte dringend Eure Hilfe in Sachen Batchscripting.

Ich bräuchte ein Batch-Script, das meine Logfiles (TXT-Dateien) auf ein bestimmtes Wort prüft und dann
eine Mail schickt. Der Clou daran ist, das aber, sollte schon mal eine Mail betreffend des Stichwortes in
dieser Zeile geschickt worden sein kein zweites Mal kommt, sondern erst wieder wenn dem Log eine
neue Zeile mit dem Stichwort hinzugefügt wird.

Könnt Ihr mir da helfen? Also mit findstr hab ich schon probiert, aber mein Problem ist das, das immer
alle Zeilen, in denen das Stichwort vorkommt Ausgegeben werden.


Danke schon Mal im Vorhinein.


LG,
FloLin

Content-Key: 184158

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

Printed on: April 25, 2024 at 01:04 o'clock

Member: bastla
bastla Apr 26, 2012 at 10:39:43 (UTC)
Goto Top
Hallo flolin!

Und wenn Du
findstr /n
verwendest und die höchste Zeilennummer zwischenspeicherst?

Grüße
bastla
Member: flolin
flolin Apr 26, 2012 at 10:42:51 (UTC)
Goto Top
Zitat von @bastla:
Hallo flolin!

Und wenn Du
findstr /n
> 
verwendest und die höchste Zeilennummer zwischenspeicherst?

Grüße
bastla

Hallo Bastla,

danke für den Tipp.
Hab allerdings im Batch-Scripten zwei linke Hände....


Grüße
flolin
Member: bastla
bastla Apr 26, 2012 at 10:49:53 (UTC)
Goto Top
Hallo flolin!

Etwa so (ungetestet):
@echo off & setlocal
set "Log=D:\Log.txt"  
set "Ges=D:\Gesendet.txt"  
set "Such=Bestimmtes Wort"  

for /f "tokens=1* delims=:" %%i in ('findstr /n /c:"%Such%" "%Log%"') do set "Letzte=%%i" & set "Text=%%j"  
set /a Gesendet=0
if exist "%Ges%" set /p Gesendet=<"%Ges%"  
if %Gesendet%==%Letzte% goto :eof

>"%Ges%" echo %Letzte%  
echo hier Mailversand ...
Grüße
bastla