Zählen mit FINDSTR
Hallo zusammen.
Vorab. Ich bin ganz neu im Thema Scripting usw.
Ich bin grade dabei die Überwachung der Serverlandschaft mittels Nagios zu realisieren.
Und dabei hab ich ein kleines Problem.
Ich möchte auf einem Windows System log Dateien nach Schlagwörtern durchsuchen und dann zählen, wie oft das Wort in der Datei vorkommt.
Diese Zahl muss ich dann irgendwie ausgeben und per Script an Nagios übergeben. Aber das ist ein anderes Thema.
ich habe schon ein wenig mit findstr rumgespielt. Nach Schlagwörtern kann ich suchen, nur zählen und iwie ausgeben bekomme ich nicht hin.
Und da kommt ihr ins Spiel
Hat vielleicht jemand für dieses "Problem" einen Lösungsansatz?
Vielen Dank
Vorab. Ich bin ganz neu im Thema Scripting usw.
Ich bin grade dabei die Überwachung der Serverlandschaft mittels Nagios zu realisieren.
Und dabei hab ich ein kleines Problem.
Ich möchte auf einem Windows System log Dateien nach Schlagwörtern durchsuchen und dann zählen, wie oft das Wort in der Datei vorkommt.
Diese Zahl muss ich dann irgendwie ausgeben und per Script an Nagios übergeben. Aber das ist ein anderes Thema.
ich habe schon ein wenig mit findstr rumgespielt. Nach Schlagwörtern kann ich suchen, nur zählen und iwie ausgeben bekomme ich nicht hin.
Und da kommt ihr ins Spiel
Hat vielleicht jemand für dieses "Problem" einen Lösungsansatz?
Vielen Dank
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 182102
Url: https://administrator.de/forum/zaehlen-mit-findstr-182102.html
Ausgedruckt am: 22.04.2025 um 04:04 Uhr
9 Kommentare
Neuester Kommentar
Hallo freaggle und willkommen im Forum!
Unter der Annahme, dass die Schlagwörter nur einmal je Zeile vorkommen, ungetestet etwa so:
Grüße
bastla
[Edit] Da könnte ja auch
Unter der Annahme, dass die Schlagwörter nur einmal je Zeile vorkommen, ungetestet etwa so:
@echo off & setlocal
set "Log=D:\Dein Log.txt"
set "Schlagwort=Dein Schlagwort"
for /f %%i in ('find /c "%Schlagwort%"<"%Log%"') do set /a Anzahl=%%i
echo "%Schlagwort%" kommt in "%Log%" in %Anzahl% Zeilen vor.
bastla
[Edit] Da könnte ja auch
find
genügen [/Edit]
Aloha,
du könntest mit
greetz André
@bastla ... egal, ich hab' Feierabend, viel Spaß noch beim Rumbasteln
Ja, wunderte mich schon.
du könntest mit
findstr
wenn denn auch nur die Anzahl der Zeilen ausgeben, wo das Schlagwort vorkommt, nicht aber die Anzahl des Schlagwortesset "vari=0"
for /f "delims=" %%s in ('findstr /c:%Schlagwort% %temp%\liste.txt') do set /a vari+=1
echo %vari%
greetz André
@bastla ... egal, ich hab' Feierabend, viel Spaß noch beim Rumbasteln
Ja, wunderte mich schon.
@skye
Da war ich etwas zu flott unterwegs - das wäre eigentlich so gemeint gewesen (aber ohnehin suboptimal):
Grüße
bastla
Da war ich etwas zu flott unterwegs - das wäre eigentlich so gemeint gewesen (aber ohnehin suboptimal):
set /a Anzahl=0
for /f "delims=:" %%i in ('findstr /i /c:"%Schlagwort%" "%Log%"^|findstr /n "^"') do set /a Anzahl=%%i
bastla