A variavel $? ja foi explicada. Geralmente esse tipo de pergunta é um tanto vaga: vc esta procurando algum tipo de problema em um script?
sugestão comando suspeito || log_erro "ops... deu erro no 'comando suspeito', exit code -> $?" sendo log_erro uma função que faz append em um arquivo de log, por exemplo. lembrando que $? nem sempre é 0 quando da algum erro e nem sempre diferente de 0 é algum erro. um caso classico é vc executar o curl em algum endereço e receber um 404, o request foi bem feito, o erro foi no servidor, e o $? é 0. se vc usa a opção -f vc força que o $? seja 32 nesse caso de um request que retorne algo diferente de 200. exemplo de um $? diferente de 0 que não é erro: tem alguns erros de copia via NFS onde a copia foi feita com sucesso mas alguma coisa estranha aconteceu. O arquivo está la, copiou, mas as permissões podem não ser as mesmas, sei la. Ja vi isso acontecer (pelo menos acho q vi). De uma lida aqui: http://aurelio.net/shell/canivete.html#exitcode o programa pode ter morrido devido a um KILL de outrem ou mesmo do sistema operacional. no man dos comandos geralmente tem uma lista de exit codes quando o programa faz uso para demonstrar diversos tipos de problema. Lembrando que algumas mensagens de erro provavelmente são enviadas para a saida de erro do programa. vc pode logar isso da seguinte forma ./script.sh 2>log.err ou, dentro do script exec 2<>log.err log.err é um arquivo que sera conectado à saida de erro ;-) 2008/7/7 Thiago Zerbinato <[EMAIL PROTECTED]>: > Pessoal, > > Como eu poderia checar pela saida de erro $? de um shell inteiro, isso é > possivel ? Ou somente o último comando do shell irá produzir a saída de erro > ? > > Obrigado > > thiagomz > > [As partes desta mensagem que não continham texto foram removidas] > > -- Tiago B Peczenyj Linux User #405772 http://peczenyj.blogspot.com/ "what does not kill us makes us stronger"
