Fehler immer nach / dev / null umleiten

22

Ich weiß, dass ich die Fehlermeldungen von einem Befehl zur /dev/nullVerwendung der folgenden Syntax umleiten kann :

command arg1 arg2 2>/dev/null

Aber gibt es eine Möglichkeit, dies standardmäßig zu tun, damit die Fehlermeldungen immer angezeigt werden /dev/null, sofern nicht anders angegeben?

Richard
quelle
1
Kurz gesagt: yes - Leite / dev / stderr nach / dev / null um. Aber wenn Sie es nicht alleine herausfinden können, sollten Sie es nicht versuchen, da Sie mit größerer Wahrscheinlichkeit etwas tödlich brechen als erfolgreich sind.
Benubird
@Benubird stderr! = / Dev / stderr. Umleiten dieser Datei wird nichts tun. Die Datei in / dev / dient nur zur Vereinfachung.
Chris Down
@ ChrisDown Sie haben Recht, / dev / stderr ist nur ein Link. Trotzdem schreiben viele Prozesse statt fd / 2 darauf, was Sie auch umleiten könnten. Von da an wird es komplizierter - deshalb habe ich einen Kommentar hinterlassen anstatt eine Antwort :).
Benubird

Antworten:

29

Viele Programme senden Ausgaben an stderr, die eigentlich keine Fehler anzeigen. In einigen Programmen werden beispielsweise Informationen angezeigt, die sich sonst auf die Ausgabe des Programms auswirken würden (das für die Weiterleitung an ein anderes Programm vorgesehen ist). Sie können dies jedoch tun:

exec 2>/dev/null

Ich würde nicht empfehlen, dies außerhalb eines Skripts zu tun.

Chris Down
quelle