[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Verificando ip .
From: |
Emerson Domingues Souto |
Subject: |
Re: [shell-script] Verificando ip . |
Date: |
Thu, 2 Feb 2006 16:26:49 -0200 |
Olá Daniel,
O método do Tiago é bem claro, e é o q eu escolheria com certeza.
Mas se vc quiser escrever com ifs, segue a sintaxe:
if [ ${IP:0:3} = "10." -o ${IP:0:7} = "172.16." -o ${IP:0:7} = "172.31." -o
${IP:0:8} = "192.168." ] ; then
echo "ip privado!"
else
echo "ip válido."
fi
Explicacao:
a expansão ${IP:0:3} pega as 3 primeiras posicoes da variavel IP e compara com
"10.",
a expansao ${IP:0:7} pega as 7 primeiras posicoes da variavel IP e compara com
"172.16." e assim por diante
Att,
Emerson
----- Original Message -----
From: Tiago Barcellos Peczenyj
To: address@hidden
Sent: Thursday, February 02, 2006 3:55 PM
Subject: Re: [shell-script] Verificando ip .
Ola,
Eu gosto de usar o 'case' nessas situações, acho mais sucinto:
read -p "digite um IP " IP
case "${IP}" in
10.*|172.16.*|172.31.*|192.168.*) TYPE=privado ;;
*) TYPE=valido ;;
esac
echo "ip '${IP}' eh '${TYPE}' "
Funcionou bem pra mim.
Em 02/02/06, daniel_zi <address@hidden> escreveu:
>
> Olá pessoal.
>
> Estou com uma dúvida. Preciso determinar se um endereço de IP digitado
> pelo usuário é privado ou válido.
>
> A idéia é tipo assim:
>
> IP=192.168.0.1
> if [ "$IP" = "10.*" -o "172.16.*" -o "172.31.*" -o "192.168.*" ] ; then
> echo ip privado!
> else
> echo ip válido.
> fi
>
> A senteça assim não funciona.Sei que fiz m***a, mas a idéia é comparar
> o IP digitado com os ip privados. O que não sei é fazer o IF entender
> que por exemplo, 172.16.* não é 172.16.*, mas sim 172.16.x.x.
>
> Conseguiram entender ?
>
> Valeu!
>
>
>
>
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
>
>
> *Yahoo! Grupos, um serviço oferecido por:* PUBLICIDADE
>
<http://br.ard.yahoo.com/SIG=12fec62mo/M=393477.7870451.8719931.2369893/D=brclubs/S=2137111254:HM/Y=BR/EXP=1138907163/A=3254979/R=0/id=noscript/SIG=12k5j3olb/*http://www.momentumquiz.com.br/index.php?md5ref=372BBEE98E9544bd8B2F9E87847EEEBE_3>
> ------------------------------
> *Links do Yahoo! Grupos*
>
> - Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>
> - Para sair deste grupo, envie um e-mail para:
> address@hidden<address@hidden?subject=Unsubscribe>
>
> - O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
> Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.
>
>
--
Tiago B Peczenyj
Linux User #405772
echo 435991959574767208964049173891616024402182829083447460457482P | dc
[As partes desta mensagem que não continham texto foram removidas]
---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
[As partes desta mensagem que não continham texto foram removidas]