Ich versuche IP-Adressen aus meinem Apache-Protokoll zu extrahieren, sie zu zählen und sie zu sortieren.Uniq-IP-Adresse aus dem Apache-Protokoll sortieren
Und aus welchem Grund auch immer, der Sortierbereich ist schrecklich. Hier
ist der Befehl:
cat access.* | awk '{ print $1 }' | sort | uniq -c | sort -n
Ausgabebeispiel:
16789 65.X.X.X
19448 65.X.X.X
1995 138.X.X.X
2407 213.X.X.X
2728 213.X.X.X
5478 188.X.X.X
6496 176.X.X.X
11332 130.X.X.X
Ich verstehe nicht, warum diese Werte nicht wirklich sortiert. Ich habe auch versucht, Leerzeichen am Anfang der Zeile (sed 's/^[\t ]*//g'
) zu entfernen und sort -n -t" " -k1
zu verwenden, das nichts ändert.
Irgendwelche Hinweise?
ich diese Frage völlig vergessen hatte, aber ich schaffte es, eine Lösung zu finden. Das hat nicht funktioniert (siehe in meiner Frage). Aber das Hinzufügen von nicht numerischen Zeichen zwischen der Nummer und der IP löste mein Problem. – Arthur
Downvote: Diese Antwort ändert absolut nichts, die tatsächliche Antwort ist der Kommentar von Arthur – nicolallias
Wie kann ich dies auf Apache ssl_request_log verwenden, da alle unsere Überschwemmung ist über ssl – Hayden