Linux Shell – IP Nummern sortiert ausgeben aus einer Liste

Manchmal braucht man, zum Beispiel eine Firewall mit sortierten IP Nummer zu füttern eben eine solche ordentliche Liste.
1.2.3.4
2.3.5.6
100.200.111.222
212.212.200.200
192.168.178.1
192.168.178.1
192.168.178.1

Wir gehen davon aus dass oben alleine stehende IP Nummern in einer liste.txt Datei stehen würden.
Dann wäre dies der richtige Befehl um sie zu sortieren und auch nur EINMAL aufzulisten:

cat liste.txt | sort -n -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 | uniq >> sortierteliste.txt

Zur Erklärung:
sort -n sortiert nach Zahlen anstatt nach Buchstaben Reihenfolge
-t . trennt die vier Spalten indem es den Punkt als Trennzeichen nimmt
-k 1,1 sortiert die erste Spalte nach der ersten Zahl
-k 2,2 sortiert die zweite Spalte nach der ersten
-k 3,3 sortiert die dritte Spalte nach der zweiten
-k 4,4 sortiert die letzte Spalte nach der dritten

 

So erhält man dann eine sortierte IP LISTE

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert