Saya telah mencoba segala macam cara untuk mengarahkan baik stdout
dan stderr
untuk /dev/null
tanpa 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.tgz
ada, 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/sh
telah mengimplementasikan&>/dev/null
sintaksis, 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)