Eu tentei todos os tipos de maneiras de redirecionar ambos stdout
e stderr
para /dev/null
sem sucesso. Eu tenho quase toda a minha vida bash que eu nunca tive esse problema, mas pela primeira vez no BSD eu estou preso /bin/sh
.
O que eu tentei:
if ls ./python* 2> /dev/null; then
echo found Python
fi
... o que funciona; se o Python não estiver presente, silenciará as mensagens de erro de ls. No entanto, se python.tgz
estiver presente, será exibida uma linha com a seguinte aparência:
# ./test.sh
./python-2.7.3p1.tgz
Eu tentei:
if ls ./python* &> /dev/null; then
echo found Python
fi
e
if ls ./python* 2>1 > /dev/null; then
echo found Python
fi
e
if ls ./python* > /dev/null; then
echo found Python
fi
Nada realmente funciona. Só posso redirecionar uma das saídas, não as duas ao mesmo tempo.
/bin/sh
implementaram a&>/dev/null
sintaxe, aparentemente não tão ou eu tenho uma versão mais antiga (o que eu não posso ecoar de forma alguma, correndo OpenBSD 5.3 tho assim deve ser suficiente)