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

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

While e as condições


From: pablo oliveira
Subject: While e as condições
Date: Wed, 17 Oct 2007 07:07:21 -0700 (PDT)

 Ae galera, blz

olha soh... to com um problema em um script com duas condições no while, segue 
a parte que interessa:

if [ $count -eq 0 ]; then
Xx=1
# Rotina do mail

                SCfrom="address@hidden"
                SCto="$address@hidden"  # função anterior define isso)
                SCsubject="Host parado $HOSTS - `date +%d-%m-%y-%H:%M`"
                SCserver="200.xxx.xxx.xxx"
                SCbody=" Caro Administrador, o Host $HOSTS em $NOME esta sem 
comunicacao, favor revisar!"
                echo -e "From: $SCfrom \nSubject: $SCsubject  \nTo: $SCto 
\n\n$SCbody\n\n" | msmtp --host=$SCserver -f $SCfrom  -- $SCto

         while test "$?" -ne 0 & "$Xx" -le 3 ; # tambem usei como "while [ "$?" 
-ne 0 ] &  [ "$Xx" -le 3 ];"
          do
                ## Rotina do mail
                Xx=$((Xx+1));
                sleep 10
                SCfrom="address@hidden"

                SCto="$address@hidden"  # função anterior define isso)

                SCsubject="Host parado $HOSTS - `date +%d-%m-%y-%H:%M`"

                SCserver="200.xxx.xxx.xxx"

                SCbody=" Caro Administrador, o Host $HOSTS em $NOME esta sem 
comunicacao, favor revisar!"

                echo -e "From: $SCfrom \nSubject: $SCsubject  \nTo:
$SCto \n\n$SCbody\n\n" | msmtp --host=$SCserver -f $SCfrom  -- $SCto

           done;
fi;


limpei o que não interessava... mas o problema é o seguinte,  na linha :

 while test "$?" -ne 0 &  "$Xx" -le 3 ; # tambem usei como "while [ "$?" -ne 0 
] &  [ "$Xx" -le 3 ];"

Se alguma das duas opões for diferente ele deveria passar o while, isnto é se o 
$? for igual a zero ou se o $Xx for maior que 3.

Mas enquanto as duas enquanto uma das duas opções é verdadeira ele fica no loop 
até ambas serem falsas... alguem tem alguma idéia a respeito?

OBS: preciso das duas condições.

Pablo






      Abra sua conta no Yahoo! Mail, o único sem limite de espaço para 
armazenamento!
http://br.mail.yahoo.com/


reply via email to

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