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

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

Re: [shell-script] Controle de fluxo baseado no valor de retorno de dois


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Controle de fluxo baseado no valor de retorno de dois comandos
Date: Thu, 26 Jun 2008 19:43:55 -0300

tenta assim:

if cmd1 && cmd2 ; then
   echo "cmd1 AND cmd2"
fi

if cmd1 || cmd2 ; then
   echo "cmd1 OR cmd2"
fi


2008/6/26 Guilherme Gall <address@hidden>:
> Prezados(as),
>
> Tenho um script onde decido entre fazer uma uma tarefa ou outra
> baseado no valor de retorno de dois comandos distintos. Sempre uso
>
> if <comando>; then
> <comandos se valor de retorno 0>
> else
> <comandos se valor de retorno diferente de 0>
> fi
>
> quando preciso fazer algo baseado no retorno de um comando só, mas em
> meu caso preciso fazer o controle de fluxo baseado no exit code de
> dois comandos diferentes. Eu precisaria de uma coisa mais ou menos
> assim:
>
> if <comando1> AND <comando2>; then
> <comandos se o retorno de comando 1 e comando 2 for 0>
> else
> <comandos se o retorno de um comando for 0 e o outro diferente de
> 0, ou se ambos forem diferentes de 0>
> fi
>
> Resumindo, gostaria de poder fazer operações de AND, OR e NOT com os
> exit codes de dois comandos diferentes para tomar uma decisão se ambos
> retornarem 0 por exemplo.
>
> Tentei fazer isso de diversas formas sem sucesso e minhas pesquisas
> sobre isso na web foram infrutíferas, então peço ajuda a vocês.
>
> A solução que arranjei foi executar o primeiro comando, guardar o
> valor $? em uma variável, executar o segundo comando, guardar o valor
> $? em uma segunda variável e finalmente, fazer algo como
>
> if [ $RET1 = 0 -a $RET2 = 0 ]; then
> <comandos>
> else
> <comandos>
> fi
>
> Não sei se fui claro, se ficou alguma dúvida do que eu quero fazer é
> só perguntar.
>
> Desde já agradeço,
>
> --
> Guilherme Magalhães Gall
>
> 



-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/
"what does not kill us makes us stronger"


reply via email to

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