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

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

RES: [shell-script] Conversão de Variáveis


From: Élvio Barbalho
Subject: RES: [shell-script] Conversão de Variáveis
Date: Thu, 19 Oct 2006 10:17:59 -0300

Caro colega, olhando seu script realmente são tipos diferentes mas vamos
lá!!!

Comparação Numérica
-lt     é menor que (LessThan)
-gt     é maior que (GreaterThan)
-le     é menor igual (LessEqual)
-ge     é maior igual (GreaterEqual)
-eq     é igual (EQual)
-ne     é diferente (NotEqual)

Comparação de Strings
=       é igual
!=      é diferente
-n      é não nula
-z      é nula

quando vc tenta fazer if [ "$B" -le 255 ]; then

na verdade esta tentado fazer o conteudo de $B que no caso é uma string
devido às " " e o número 255. Faça o teste assim 
if [ "$B" -le "255" ]; then vc verá que não vai gerar erro.


Att.
Elvio Barbalho
Técnico de Produção
GEOTI - Gerência de Operações e Tecnologia
Tel +55 061 2108-8863
E-mail: address@hidden
Visite nosso site: www.atp.com.br


> ----- Mensagem original -----
> De:           Marcus Vinicius [SMTP:address@hidden]
> Enviada em:           quinta-feira, 19 de outubro de 2006 09:15
> Para:         address@hidden
> Assunto:              [shell-script] Conversão de Variáveis
> 
> Bom Dia !!!
> 
> Sou novo na lista e inexperiente em shell script... estou montando um
> script para verificar um numero de IP e não estou conseguindo comparar 2
> valores...
> segue script...
> 
> # !/bin/bash
> #
> # Verificação de IP Válido
> 
> echo "Digite um IP"
> read server1
> 
> A=0; B=0; C=0; D=0
> MAX=255
> A=$(echo $server1 | cut -d"." -f1)
> B=$(echo $server1 | cut -d"." -f2)
> C=$(echo $server1 | cut -d"." -f3)
> D=$(echo $server1 | cut -d"." -f4)
> E='expr $A - 255'
> 
> if [ "$B" -le 255 ]; then
>   
>     if [ "$B" -gt 255 ]; then
>         COMANDOS...
>     fi
>     if [ "$C" -gt 255 ]; then
>           COMANDOS...
>     fi
>     if [ "$D" -gt 255 ]; then
>           COMANDOS...
>     fi
> else
>   exit 1
> fi
> 
> tentei tb fazer um if [ "$B" -le "$MAX ] e não funcionou... dá um erro
> dizendo q são tipos diferentes de valores...
> como converto tudo para inteiro e comparo os valores ??
> 
> o
> 
> Marcus Vinicius S. Oliveira
> Centro Educacional Casa do Estudante
> address@hidden
> Itabatã / Mucuri (BA)
> Linux User #369299
> MSN address@hidden
> 
> [As partes desta mensagem que não continham texto foram removidas]
> 
>  


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



reply via email to

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