Quelle expression régulière puis-je utiliser pour faire correspondre une adresse IP ?
Avec la syntaxe grep
suivante, je veux faire correspondre toutes les adresses IP d'un fichier (à partir d'un script ksh
)
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file
Le problème : il faut aussi faire correspondre les mots (IP) qui ont plus de 4 octets :
1.1.1.1.1
ou
192.1.1.1.160
Comment faire correspondre une IP valide et seulement les adresses IP de 4 octets ? Je peux aussi utiliser Perl - une solution syntaxique d'une ligne, si grep
ne fonctionne pas.