Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage so, dass sie sich nur auf ein Problem konzentriert, indem Sie diesen Beitrag bearbeiten.
Vor 3 Jahren geschlossen.
Verbessern Sie diese Frage
Ich versuche zu verhindern, dass ein GUI-Programm, das vom Terminal gestartet wurde, in die Konsole schreibt. Dazu führe ich guiprogram >&-
aus . Dies führt dazu, dass das Programm bei einigen Operationen einfriert.
Was bedeutet >&-
Betreiber genau tun? Was ist der beabsichtigte Zweck davon? Können Sie Beispiele nennen? Ist es legitim, das Schreiben in die Konsole durch deren Verwendung zu verhindern? Warum friert das Programm beim Schließen der Standardausgabe ein?
Akzeptierte Antwort:
Wenn Sie verhindern möchten, dass die Ausgabe eines Programms irgendwo erscheint, leiten Sie zu /dev/null
um :
guiprogram >/dev/null 2>&1
Schließen von stdout
funktioniert nur, wenn das Programm mit geschlossenen Dateien umzugehen weiß.
Eine praktische Verwendung von >&-
ist selten, Sie können es verwenden, wenn Sie stdout
nachträglich ein anderes Ausgabeziel zuweisen und sicher sein wollen, dass der ursprüngliche Ausgangskanal richtig geschlossen wurde.