zsh: Validar IPv4 utilizando PCRE

Publicado por Sandro Marcell (última atualização em 01/03/2013)

[ Hits: 3.783 ]

Homepage: http://sanmarcell.wordpress.com

Download ipv4_pcre




Função genérica para validar endereços IPv4 utilizando o módulo PCRE (Perl Compatible Regular Expressions) do zsh.

  



Esconder código-fonte

#
# Funcao para validacao generica de enderecos IPv4 usando o modulo
# PCRE (Perl Compatible Regular Expressions) do zsh.
#
# Sandro Marcell <smarcell@myopera.com>
#
# Para utilizar esta funcao, basta passar como argumento o IP a ser validado e checar
# o codigo de retorno ($?).
#
# Codigos de retorno
# 0 = IP valido
# 1 = Formato invalido para endereco IP
# 2 = Endereco IP fora da faixa valida (0-255) 
#
# Mais detalhes:
# - (man|info) zsh
# - http://www.pcre.org/
#

# Carrega o modulo PCRE (sem essa linha, a funcao nao tem utilidade alguma!)
zmodload zsh/pcre

function validarIPv4 {
   local ip padrao_ip ip_valido
   
   ip="$1" # IP a ser validado
   padrao_ip='^([\d]{1,3}\.){3}[\d]{1,3}$' # Formato 'xxx.xxx.xxx.xxx'
   ip_valido='^(((1[\d]|[1-9]?)[\d]|2([0-4][\d]|5[0-5]))\.){3}((1[\d]|[1-9]?)[\d]|2([0-4][\d]|5[0-5]))$' # Intervalo de 0 a 255
   
   # Checa se a entrada esta em formato valido
   pcre_compile "$padrao_ip"
   pcre_match "$ip" || return 1
   
   # Valida o endereco IP de 0 a 255
   pcre_compile "$ip_valido"
   pcre_study
   pcre_match "$ip" || return 2
   
   return 0
}

Scripts recomendados

Script Nagios

Limpeza do Squid Manual

Cadastro SHELL SCRIPT/MySQL/PHP

Controla Daemon do ProFTP

Script para criação de pacotes auto extrator.


  

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