Ingin memperbaiki pertanyaan ini? Perbarui pertanyaan agar fokus pada satu masalah saja dengan mengedit postingan ini.
Ditutup 3 tahun yang lalu.
Perbaiki pertanyaan ini
Saya mencoba untuk mencegah program GUI, yang dimulai dari terminal, untuk menulis ke konsol. Untuk melakukan ini, saya menjalankan guiprogram >&-
. Hal ini menyebabkan program terhenti pada beberapa operasi.
Apa >&-
operator persis lakukan? Apa tujuan yang dimaksudkan? Bisakah Anda memberikan contoh? Apakah sah untuk mencegah penulisan ke konsol dengan menggunakannya? Mengapa program membeku saat menutup keluaran standar?
Jawaban yang Diterima:
Jika Anda ingin mencegah keluaran dari suatu program muncul di mana saja, arahkan ke /dev/null
:
guiprogram >/dev/null 2>&1
Menutup stdout
hanya berfungsi jika program mengetahui cara menangani file yang ditutup.
Penggunaan praktis >&-
jarang, Anda dapat menggunakannya jika Anda kemudian menetapkan tujuan keluaran lain ke stdout
dan ingin memastikan saluran keluaran asli ditutup dengan benar.