zsh: Validar IPv4 utilizando PCRE
Publicado por Sandro Marcell (última atualização em 01/03/2013)
[ Hits: 4.137 ]
Homepage: http://sanmarcell.wordpress.com
Função genérica para validar endereços IPv4 utilizando o módulo PCRE (Perl Compatible Regular Expressions) do zsh.
#
# 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
}
Gerência do tempo de inicialização das MFs de uma nuvem privada com o OpenNebula
Ajuste Dinâmico do Governador de CPU no Linux
conssh.sh - Frontend para SSH via proxy HTTP
Firewall com proxy transparente completo
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Programa fora de escala na tela do pc (10)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)
O programa assinador digital (1)









