Servus zusammen,
Manches im Terminal gestartete Programm gibt für den Benutzer unnötige Warnmeldungen aus, welche ich gerne unterdrücken würde, ohne jedoch Fehlermeldungen allgemein zu unterdrücken. Wie ginge das?
Beispiel: evince
gibt manchmal eine Warnung aus, obwohl dann alles geht:
$ evince datei.ps (evince:3235): GLib-GObject-WARNING **: 06:54:23.303: invalid cast from 'PSDocument' to 'EvDocumentLinks'
Solche Warnungen oder Fehler kännen durch Umleitung des Fehlerausgabestroms (2) ganz unterdrückt weden:
evince datei.ps 2> /dev/null
Aber dann werden auch echte Fehlermeldungen unterdrückt, z.B. wenn evince
die zu öffnende Datei nicht findet. Das möchte ich nicht.
Mit grep --invert-match
kann ich zwar aus der Ausgabe eines Programms mißliebige Zeilen herausfiltern, aber Warn- und Fehlermeldungen kommen trotzdem durch.
echo Zeile mit WARNING Ende | grep --invert-match "WARNING" <Keine Ausgabe, wie erwartet.>
Hingegen schlüpft bei:
evince datei.ps | grep --invert-match "WARNING"
… dennoch die eingangs zitierte Warnmeldung durch:
(evince:3235): GLib-GObject-WARNING […]
Gibt es da einen Schalter oder ein Werkzeug für diesen Zweck? Danke.