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.