J'ai essayé toutes sortes de façons de rediriger les deux stdoutet stderrà /dev/nullsans aucun succès. J'ai presque toute ma vie couru bash que je n'ai jamais eu ce problème, mais pour une fois dans BSD je suis coincé avec /bin/sh.
Ce que j'ai essayé
if ls ./python* 2> /dev/null; then
echo found Python
fi
... qui fonctionne si Python n'est pas présent, les messages d'erreur de ls seront mis en sourdine. Cependant, si python.tgzest présent, une ligne avec être sortie qui ressemble à ceci:
# ./test.sh
./python-2.7.3p1.tgz
J'ai essayé:
if ls ./python* &> /dev/null; then
echo found Python
fi
et
if ls ./python* 2>1 > /dev/null; then
echo found Python
fi
et
if ls ./python* > /dev/null; then
echo found Python
fi
Rien ne fonctionne vraiment. Je ne peux que rediriger une des sorties, pas les deux en même temps.
/bin/shont implémenté la&>/dev/nullsyntaxe, apparemment pas ou si j'ai une version plus ancienne (que je ne peux en aucun cas