Wie vermeide ich Nachrichten von Anwendungen, die ich mit einem & ausgeführt habe?

Wie vermeide ich Nachrichten von Anwendungen, die ich mit einem & ausgeführt habe?

Ich habe Dolphin folgendermaßen ausgeführt:

dolphin . &

Ich sehe in der Konsole Meldungen wie diese:

QPixmap::scaled: Pixmap is a null pixmap

Wie kann ich die Konsole sauber oder leise halten?

Antwort1

Sie können die Ausgabe in eine Datei oder nirgendwohin umleiten.

Mithilfe der Ausgabeumleitung >können Sie stdout und/oder stderr vom Terminal weg umleiten.

Um stdout und stderr in eine Datei umzuleiten, verwenden Sie &> log.txt.

Wenn Sie nur möchten, dass die Ausgabe weitergeleitet wird, verwenden Sie &> /dev/null.

Ihr neuer Befehl wäre alsodolphin . &> /dev/null &

&>leitet die gesamte Ausgabe um

verwenden Sie >oder 1>um nur die Standardausgabe umzuleiten

2>nur zur Umleitung von stderr verwenden

Notiz:wenn Sie an eine Datei anhängen und sie nicht überschreiben möchten, verwenden Sie >>anstelle von >.

Antwort2

Leiten Sie die gesamte Ausgabe in ein schwarzes Loch um:

dolphin . > /dev/null 2>&1 &

Die 2, 1und 0(hier nicht verwendet) stehen für STDERR (wohin alle Fehlermeldungen gesendet werden), STDOUT(wohin die normale Ausgabe geht) und STDIN (woher die Eingabe kommt). In einem normalen Terminal werden STDOUT und STDERR beide auf dem Bildschirm ausgegeben.

Das obige Beispiel leitet STDOUTmit >zu /dev/nullund dann STDERRin weiter STDOUT, sodass beide Ausgabestreams bei enden /dev/null.

verwandte Informationen