GNU/Linux >> Znalost Linux >  >> Linux

Zavření standardního výstupu (>&-)?

Zavřeno . Tato otázka musí být více zaměřena. Momentálně nepřijímá odpovědi.

Chcete zlepšit tuto otázku? Aktualizujte otázku tak, aby se zaměřila pouze na jeden problém úpravou tohoto příspěvku.

Zavřeno před 3 lety.


Vylepšete tuto otázku

Snažím se zabránit tomu, aby program GUI, který byl spuštěn z terminálu, zapisoval do konzoly. K tomu spustím guiprogram >&- . To vede k zamrznutí programu při některých operacích.

Co znamená >&- operátor přesně dělat? Jaký je zamýšlený účel? Můžete uvést nějaké příklady? Je legitimní bránit zápisu do konzole jejím používáním? Proč program zamrzne při uzavření standardního výstupu?

Přijatá odpověď:

Pokud chcete zabránit tomu, aby se výstup z programu objevil kdekoli, přesměrujte se na /dev/null :

guiprogram >/dev/null 2>&1

Zavírání stdout funguje pouze v případě, že program ví, jak zacházet s uzavřenými soubory.

Praktické použití >&- je vzácné, můžete jej použít, pokud následně přiřadíte jiný výstupní cíl stdout a chcete si být jisti, že původní výstupní kanál byl správně uzavřen.


Linux
  1. Výstup „posledního“ příkazu?

  2. Jak přesměrovat výstup programu do souboru ZIP?

  3. Jak zajistit, aby jakýkoli program fungoval s příkazem Tee?

  1. Linux – Přestat sledovat výstup konkrétního programu po použití příkazu Watch?

  2. on-the-fly výstup přesměrování, vidět výstup přesměrování souboru, zatímco program stále běží

  3. Python - Vedoucí, jak protokolovat standardní výstup -

  1. Jak interpretovat výstup netstat -o / netstat --times

  2. Určete, zda je výstup stdout nebo stderr

  3. Co je/jsou standardní programy CLI pro správu uživatelů a skupin?