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

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

Re: [shell-script] tratamento de erros dentro de funções


From: Enio Onodera
Subject: Re: [shell-script] tratamento de erros dentro de funções
Date: Fri, 13 Jul 2012 08:18:46 -0700 (PDT)

Acho q assim funciona:

#!/bin/bash

function teste_erro(){
ping -q -c 3 -W 5 google.com 2>&1
if [ "$?" == "0" ]; then
echo OK
else
echo ERROR
fi
}

teste_erro



Abs,
Enio Onodera


________________________________
 De: Carlos Alberto Teixeira Magalhães <address@hidden>
Para: address@hidden 
Enviadas: Sexta-feira, 13 de Julho de 2012 11:49
Assunto: Re: [shell-script] tratamento de erros dentro de funções
 

  
Bom dia.

Acredito que, nestas duas linhas:

local result_ping=$( ping -q -c 3 -W 5 google.com 2>&1)
if [ "$?" == "0" ]; then

Você esteja testando apenas se a atribuição do valor à variável funcionou,
e não o resultado do ping.

Até mais.

Em 13 de julho de 2012 11:20, cleberson <address@hidden> escreveu:

> **
>
>
> Srs.,
>
> Bom dia,
>
> Gostaria de ajuda para solucionar o problema abaixo, em que, a variável
> "$?" não funciona dentro de uma função. O exemplo abaixo esta pingando um
> domínio que não existe, e retornaria um erro após execução. Mas não é o que
> acontece. Quando se executa o ping fora de uma função o retorno do codigo
> de erro acontece normalmente.
>
> Desde já agradeço atenção.
>
> att,
> Cleberson.
>
> #!/bin/bash
>
> function teste_erro(){
> local result_ping=$( ping -q -c 3 -W 5 google.com 2>&1)
> if [ "$?" == "0" ]; then
> echo OK
> else
> echo ERROR
> fi
> }
>
> teste_erro
>
> ######################################################
>
> ~# bash -x teste.sh
> + teste_erro
> ++ ping -m 1 -q -c 3 -W 5 google.com
> + local 'result_ping=PING google.com (74.125.234.6) 56(84) bytes of data.
>
> --- google.com ping statistics ---
> 3 packets transmitted, 0 received, 100% packet loss, time 2001ms'
> + '[' 0 == 0 ']'
> + echo OK
> OK
>
> 
>

-- 
Carlos Alberto Teixeira Magalhães
Analista de Suporte
Departamento de Informática - DI
Universidade Estadual do Ceará - UECE
"A Ciência da Computação nasceu para resolver problemas que não existiriam
se não fosse o computador." :P

[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]