Avec la grep
syntaxe suivante, je veux faire correspondre toutes les adresses IP d'un fichier (à partir d'un ksh
script)
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file
Le problème: il correspond également aux mots (IP) de plus de 4 octets:
1.1.1.1.1
ou
192.1.1.1.160
Comment faire correspondre une adresse IP valide et uniquement des adresses IP de 4 octets? Je peux aussi utiliser Perl - une solution de syntaxe sur une ligne, si grep
cela ne fonctionne pas.
192.1.4097
valides et acceptées par Linux glibc et Windows.
0x7f.1
et0177.1
999.999.999.999
aussi.