¿Qué expresión regular puedo utilizar para hacer coincidir una dirección IP?
Con la siguiente sintaxis grep
quiero hacer coincidir todas las direcciones IP de un fichero (de un script ksh
)
grep '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' file
El problema: También coincide con palabras (IP) que tienen más de 4 octetos:
1.1.1.1.1
o
192.1.1.1.160
¿Cómo puedo hacer coincidir una IP válida y sólo direcciones IP con 4 octetos? También puedo usar Perl - una solución de sintaxis de una línea, si grep
no funciona.