vorlon
Goto Top

Textzeilen mit einem bestimmten Stichwort per Batch auslesen

Guten Morgen an alle die mehr vom Batch-Skripting verstehen als ich! face-wink

Ich bin mal wieder an einem Punkt angekommen wo mir die bisherigen Post hier
und die Gogglefunde im Internet nicht mehr weiter helfen.

Ich habe mehrere Robocopy-Logs die ich nachts von einer Batchdatei auf Fehler
überprüfen lasse und finde dann morgens eine Zusammenfassung auf meinem Desktop
welche Jobs mit einem errorlevel größer als 3 beendet wurden und "Aufmerksamkeit" erfordern.

In der Regel fange ich dann an die sehr großen Logdateien mit einem Texteditor nach dem
Begriff "Fehler:" zu durchsuchen um zu sehen welche einzelnen Dateien nicht gesichert wurden.

Ich suche daher nach einer Möglichkeit die Logdateien per Batch nach dem Begriff Fehler: zu durchsuchen
und dann die entsprechende Zeile in eine andere txt-Datei zu kopieren.

Für alle Lösungsansätze die ich bisher probiert habe benötige ich aber die entsprechenden Zeilennummern,
die ich nicht habe und per findstr /m kann ich nur das Vorhandensein von Fehler: feststellen.

Irgendwie stehe ich bei dieser Sache auf dem Schlauch...
Falls jemand von euch Licht in mein Dunkel bringen kann wäre ich sehr sehr dankbar!

Content-Key: 256173

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

Printed on: April 19, 2024 at 20:04 o'clock

Mitglied: 114757
Solution 114757 Nov 28, 2014, updated at Nov 30, 2014 at 15:36:17 (UTC)
Goto Top
find "Fehler:" C:\logs\*.log >"c:\logs\errors.txt"

Gruß jodel32
Member: SeriousEE
Solution SeriousEE Nov 28, 2014, updated at Nov 30, 2014 at 15:36:20 (UTC)
Goto Top
Guten Morgen,

Evt. mit

  @echo off
  find "Fehler:" <Log>.log > ErrorReport.log  

Liefert bei mir die gewünschten Zeilen samt Text.

Mit freundlichen Grüßen
Member: Vorlon
Vorlon Nov 28, 2014 at 17:00:08 (UTC)
Goto Top
Danke für die Antworten, funktioniert soweit wie erhofft, jede Zeile mit dem Suchbegriff erscheint in der Ausgabedatei.

Allerdings habe ich da noch ein kosmetisches Problem, bei dem ich nicht weis wo es her kommt...
Vor den Zeilen mit dem Suchbegriff wird in der Ausgabedatei noch eine Zeile nach folgendem Schema eingefügt:

\\SERVER\BACKUP-LOGS\1469L\FIBU-SERVER\2014\LOGFILE 28.11.2014 - 2-04 UHR (ROOT).LOG

Vorne 10 Bindestriche und dann der UNC-Pfad der Logdatei, ich bin wirklich mal wieder ratlos!

Dies ist die relevante Zeile in meiner Batch:
find "(0x00000020)" "%logfilehomepath%\%KdNr%\%PCname%\%date:~-4%\%logfile%">>%errorfile%
Member: Endoro
Solution Endoro Nov 29, 2014, updated at Nov 30, 2014 at 15:36:22 (UTC)
Goto Top
Hey,
das ist die Meldung von find, damit du weisst, in welcher Logdatei der Fehler gefunden wurde. Wenn das stört, mach es so:
<"%logfilehomepath%\%KdNr%\%PCname%\%date:~-4%\%logfile%" find "(0x00000020)" >>"%errorfile%"  
Gruss, Endoro
Member: Vorlon
Vorlon Nov 30, 2014 at 15:36:02 (UTC)
Goto Top
Mein grundlegendes Problem wäre damit gelöst! Vielen Dank!!!
Ich werde das Feintuning nächstes WE mal ausprobieren, da mir aktuell die Zeit fehlt.