Как избежать сообщений от приложений, которые я запустил с помощью &?

Как избежать сообщений от приложений, которые я запустил с помощью &?

Я управлял дельфином вот так:

dolphin . &

Я вижу в консоли такие сообщения:

QPixmap::scaled: Pixmap is a null pixmap

Как сохранить консоль чистой и бесшумной?

решение1

Вы можете перенаправить вывод в файл или в никуда.

Используя перенаправление вывода, >вы можете перенаправить stdout и/или stderr от терминала.

Чтобы перенаправить stdout и stderr в файл, используйте &> log.txt.

Если вы просто хотите, чтобы вывод был сделан, используйте &> /dev/null.

Итак, ваша новая команда будетdolphin . &> /dev/null &

&>перенаправляет весь вывод

используйте >или 1>для перенаправления только stdout

использовать 2>только для перенаправления stderr

Примечание:если вы хотите добавить файл, а не перезаписать его, используйте >>вместо >.

решение2

Перенаправить весь вывод в черную дыру:

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

, и 2( здесь не используются) обозначают STDERR (куда отправляются все сообщения об ошибках), (куда идет обычный вывод) и STDIN (откуда поступает ввод). В обычном терминале STDOUT и STDERR оба выводятся на экран.10STDOUT

В приведенном выше примере выполняется перенаправление STDOUTс >to /dev/null, а затем перенаправление STDERRinto STDOUT, поэтому оба выходных потока заканчиваются на /dev/null.

Связанный контент