satriani
SysLion
Hallo,
ich quälle mich hier mit einem Befehl zur Validierung einer IPv6, der sieht wie folgt aus:
Beim Output werden 8f9 und 321 jeweils um eine vorstehenden Null ergänzt, soweit so gut. Doch man kann die IPv6 auch wie folgt kürzen 2001:db8:0:0:8d3::
oder so 2001:db8::8d3:0:0:0
In beiden Fällen ist das Ergebnis wie man sieht, leider nicht wie erwünscht.
Bitte die Shellexperten um Einblick
Danke im Voraus, Gruß.
ich quälle mich hier mit einem Befehl zur Validierung einer IPv6, der sieht wie folgt aus:
Code:
# echo "3a07:8f9:321:8942:4f59:0000:0000:0000" | awk -F: '{for(i=1;i<=NF;i++)x=x""sprintf ("%4s", $i);gsub(/ /,"0",x);print x}' | sed 's/..../&:/g' | cut -d: -f1 -f2 -f3 -f4 -f5 -f6 -f7 -f8
# 3a07:08f9:0321:8942:4f59:0000:0000:0000
Code:
# echo "2001:db8:0:0:8d3::" | awk -F: '{for(i=1;i<=NF;i++)x=x""sprintf ("%4s", $i);gsub(/ /,"0",x);print x}' | sed 's/..../&:/g' | cut -d: -f1 -f2 -f3 -f4 -f5 -f6 -f7 -f8
# 2001:0db8:0000:0000:08d3:0000:0000:
Code:
# echo "2001:db8::8d3:0:0:0" | awk -F: '{for(i=1;i<=NF;i++)x=x""sprintf ("%4s", $i);gsub(/ /,"0",x);print x}' | sed 's/..../&:/g' | cut -d: -f1 -f2 -f3 -f4 -f5 -f6 -f7 -f8
# 2001:0db8:0000:08d3:0000:0000:0000:
Bitte die Shellexperten um Einblick
Danke im Voraus, Gruß.
Zuletzt bearbeitet: