Saya telah mencoba segala macam cara untuk mengarahkan baik stdoutdan stderruntuk /dev/nulltanpa keberhasilan. Saya memiliki hampir seluruh hidup saya menjalankan bash yang saya belum pernah mengalami masalah ini, tetapi untuk sekali di BSD saya terjebak dengan /bin/sh.
Apa yang saya coba:
if ls ./python* 2> /dev/null; then
echo found Python
fi
... yang bekerja; jika Python tidak ada maka akan membisukan pesan kesalahan dari ls. Namun, jika python.tgzada, baris dengan akan ditampilkan yang terlihat seperti ini:
# ./test.sh
./python-2.7.3p1.tgz
Saya sudah mencoba:
if ls ./python* &> /dev/null; then
echo found Python
fi
dan
if ls ./python* 2>1 > /dev/null; then
echo found Python
fi
dan
if ls ./python* > /dev/null; then
echo found Python
fi
Tidak ada yang benar-benar berfungsi. Saya hanya bisa mengarahkan salah satu output, tidak keduanya sekaligus.
/bin/shtelah mengimplementasikan&>/dev/nullsintaksis, aparently tidak jadi atau saya memiliki versi yang lebih lama (yang saya tidak bisa gema dengan cara apa pun, menjalankan OpenBSD 5.3 yang seharusnya cukup)