Как использовать мой пейджер (больше / меньше) только при выводе ошибок - PullRequest
3 голосов
/ 15 сентября 2008

У меня есть программа, которая выдает как стандартную ошибку, так и стандартную, и я хочу меньше запускать пейджер при стандартной ошибке, но игнорировать стандартную ошибку Как мне это сделать?

Обновление:

Вот и все ... Я не хотел терять стандартный вывод ... просто держи его подальше от пейджера

program 2>&1 >log | less

потом

less log

1 Ответ

4 голосов
/ 15 сентября 2008

Вы можете попытаться перенаправить стандартный выход в / dev / null, но перенаправить стандартную ошибку туда, где раньше был стандартный выход.

Пример в ksh / bash:

program 2>&1 >/dev/null | less

Здесь перенаправление 2> & 1, которое устанавливает дескриптор файла 2 (stderr) для указания на тот же поток, что и дескриптор файла 1 (stdout), оценивается до перенаправление> / dev / null, которое устанавливает дескриптор файла 1 для указания на / dev / null. В результате то, что вы пишете в stderr, отправляется в stdout, а то, что вы пишете в stdout, выбрасывается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...