AWK - Validando endereços IPv4

Publicado por Sandro Marcell em 08/10/2012

[ Hits: 4.826 ]

Blog: http://sanmarcell.wordpress.com

 


AWK - Validando endereços IPv4



Essa é para aqueles que precisam validar um endereço IPv4 de forma rápida, sem necessidade de criar uma função em shell script, com instruções e loops em várias linhas.

Esse one-liner em AWK, resolve o problema "num tapa". :)

Obs.: Dica testada no GNU ASK 3.1.6

awk -W posix '/^(((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))\.){3}((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))$/'


Ao validar o IP, o AWK retorna-o caso seja válido, caso contrário, não irá retornar nada!

Exemplos:

IP inválido (não irá retornar nada!):
$ echo '192.168.256.43' | awk -W posix '/^(((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))\.){3}((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))$/'

IP válido (retorna o IP!):
$ echo '192.168.2.43' | awk -W posix '/^(((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))\.){3}((1[0-9]|[1-9]?)[0-9]|2([0-4][0-9]|5[0-5]))$/'
192.168.2.43

Mais detalhes?

man awk

Falou!!! ;)

Dica também publicada em:

Outras dicas deste autor

Adicionando Extensões em Arquivos

Utilizando abreviações no Vim

Zsh: Menu de autocompletar para o comando kill

sed - Removendo caracteres acentuados

Copiando arquivos com caracteres especiais

Leitura recomendada

Awk - Uma poderosa ferramenta de análise

O uso do comando LDD, útil para o Slackware

Remover pacotes instalados duplicados (yum)

Excluindo "output errors" nas saídas dos comandos

Rápido sobre RPM

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts