Eine Log-Datei auszuwerten ist manchmal gar nicht so einfach und oft hat man auch nicht die Zeit großartig rumzusuchen, sondern will schnell eine Analyse der Logs machen. Ich musste das bzgl. IP-Adressen machen, um herauszufinden, wie oft welche IP in einem Zeitraum zugegriffen hat.
Das Logfile hat dabei folgenden Aufbau:
ip-address - - [dd/MMM/YYYY:hh:mm:ss] "blabla"
Folgendes Skript macht das, was ich wollte:
find . -name /path/to/logfile -exec grep "Regex mit z.B. Datum" '{}' \; -printÂ
|awk '{print $1}' |sort |uniq -c |sort -n |tail
Das liefert dann eine Listung der IP-Adressen in aufsteigender Reihenfolge.
Alternativ kann man auch ein Shell-Skript schreiben und sicher noch 1000 Sachen besser machen etc. pp.
