Pular para o conteúdo

Esconder / Ocultar mensagens de erro [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Esconder / Ocultar mensagens de erro [RESOLVIDO]

Enviado em 21/11/2008 - 18:51h

Olá,

Na dica de Daniel* é ensinado como esconder a saída de um determinado comando executado no shell script usanso o > /dev/null. Entretanto...

***** Como faço para ocultar as mensagens de erro? *****

No exemplo abaixo não consigo esconder / redirecionar a saída de erro:

Arquivo teste.sh:

#!/bin/sh

ls $1 > /dev/null

if [ "$?"!=0 ]; then
echo "Erro ao listar o diretório $1";
fi

Comando executado (a pasta /home/windows não existe)

./teste.sh /home/windows

Saida obtida:

ls: impossível acessar /home/windows: Arquivo ou diretório inexistente
Erro ao listar o diretório /home/luana

Sendo que espera que aparecesse apenas a mensagem que eu indiquei ("Erro ao listar o diretório $1")


* Daniel Cassemiro Freire
- Perfil: http://www.vivaolinux.com.br/perfil/verPerfil.php?login=alphainfo
- Dica: http://www.vivaolinux.com.br/dica/Escondendo-Personalizando-mensagens-de-erro-no-prompt/

Responder tópico

2. Re: Esconder / Ocultar mensagens de erro [RESOLVIDO]

Melhor resposta

Enviado em 21/11/2008 - 19:08h

ls $1 2> /dev/null

1> redireciona stdout (ou apenas >)
2> redireciona stderr
você pode redirecionar ambos ao mesmo tempo:
ls $1 > /dev/null 2> /dev/null
ou, abreviadamente:
ls $1 2>&1 /dev/null

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder