shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Testar Lista de IPs


From: Marcelo Neto
Subject: Re: [shell-script] Testar Lista de IPs
Date: Wed, 9 May 2012 15:01:59 -0300

Olá, certa vez fiz um script pra checar a validação de um IP. Podem existir
melhores formas, mas foi a melhor jeito que encontrei no momento. Espero
poder ajuda-lo.

No meu caso eu criei uma variável "server" que recebia o IP com os octetos
separados por pontos e não importava se o octeto possuía 1, 2 ou 3 dígitos.

por exemplo:

*server=10.213.15.1*
*
*
*# TROCAR OS "." DO IP POR " " *(aqui será feita a troca de "." por " " e
será criado um array com 4 variáveis onde cada variável será um octeto)
*#*
*ips=($(tr -s "." " " <<< ${server}))*
*
*
*# REALIZAR TESTES DE VALIDACAO PARA O IP* (este "for" foi feito para ele
realizar testes octeto por octeto)
*#*
*for (( i=0 ; i<4 ; i++ ))*
*{*
* if [ -z "${ips[i]}" ]*
* then*
* echo -e "Nao sera possivel realizar a conexao pois o IP esta incorreto.
OBS: Possivelmente CAMPO EM BRANCO!\n"*
* exit 1*
* fi*
*
*
* if [[ ${#ips[i]} -gt 3 ]]*
* then*
* echo -e "Nao sera possivel realizar a conexao pois o IP esta incorreto.
OBS: Possivelmente CAMPO COM CARACTERES A MAIS DO QUE O PERMITIDO!\n"*
* exit 1*
* fi*
*
*
* if [[ ${ips[i]} =~ (^[0-9]{1,3}$) ]]*
* then*
* echo "" > /dev/null*
* else*
* echo -e "Nao sera possivel realizar a conexao pois o IP esta incorreto.
OBS: Possivelmente CARACTERE INVALIDO!\n"*
* exit 1*
* fi*
*
*
* if [ "${ips[i]}" -gt 255 ]*
* then*
* echo -e "Nao sera possivel realizar a conexao pois o IP esta incorreto.
OBS: Possivelmente campo com valor ACIMA DE 255!\n"*
* exit 1*
* fi*
*}*

isso a cima foi para testar se realmente é um IP válido.
depois basta criar um for para pingar cada um dos IPS.
Espero poder ter ajudado.

-- 
Marcelo Neto
(85) 8886.5730
(85) 9681.5277
Fortaleza - Brasil


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]