Eu tentei todos os tipos de maneiras de redirecionar ambos stdoute stderrpara /dev/nullsem 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.tgzestiver 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/shimplementaram a&>/dev/nullsintaxe, 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)