Nehmen wir an, ich habe Millionen von Paketen zu durchsuchen und ich möchte sehen, wie oft ein Paket an eine bestimmte Portnummer gesendet wurde.Wie kann ich die Anzahl der eindeutigen Übereinstimmungen mit grep ausdrucken?
Hier sind einige der Pakete:
10:27:46.227407 IP 85.130.236.26.54156 > 139.91.133.120.60679: tcp 0
10:27:46.337038 IP 211.142.173.14.80 > 139.91.138.125.56163: tcp 0
10:27:46.511241 IP 211.49.224.217.3389 > 139.91.131.47.6973: tcp 0
Ich möchte hier durch die zweite Portnummer suchen so:
60679, 53163, 6973, etc
So kann ich verwenden:
grep -c '\.80:' output.txt
Um alle Zeiten zu zählen, wurde Port 80 verwendet. Aber gibt es eine Möglichkeit, alle Ports anzuzeigen, die verwendet wurden und wie oft es in dieser Datei gefunden wurde. So etwas wie dieses und bevorzugt sortiert auch so kann ich sehen, welche Ports am häufigsten verwendet wurden:
.80: - 54513
.110: - 12334
.445: - 412
Danke für die Hilfe. Aber ich habe Probleme mit Schnitt. Gibt es eine Möglichkeit, nur mit regulärem Ausdruck zu schneiden? Weil die Portnummer nicht jedes Mal in der gleichen Spalte und dem gleichen Abstand ist. – Dragonfly
Cut verwendet keine Regex. Bearbeiten Sie Ihre Frage und fügen Sie einige Beispielzeilen hinzu, damit wir das Format sehen können. –
Ok ich habe es einige Beispiele bearbeitet. Was würdest du mir empfehlen? – Dragonfly