Перенаправление на dev / null - PullRequest
       38

Перенаправление на dev / null

0 голосов
/ 10 октября 2018

Может кто-нибудь сказать мне, почему я не могу перенаправить стандартную ошибку в / dev / null?

xxx:xxx 84> find / -name trans.log 2> /dev/null

Выходы

find: пути должны предшествовать выражению: 2

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Кажется, ваша оболочка не интерпретирует "2>" выражения оболочки, но передает этот аргумент команде поиска

find: пути должны предшествовать выражению: 2

Кажется, что "2" здесь анализируется с помощью find как выражения.Я не могу воспроизвести здесь с моей оболочкой, но что если вы удалите пробел между 2> и /dev/null, то есть 2>/dev/null?

0 голосов
/ 10 октября 2018

Я верю в то, что вы ищете;Команды «больше» (>) в таких командах перенаправляют вывод программы куда-то.В этом случае что-то перенаправляется в / dev / null, а что-то перенаправляется в & 1

xxx:xxx 84> find / -name trans.log >/dev/null 2>&1

Если вы не укажете число, тогда предполагается стандартный поток вывода, но вы также можете перенаправитьошибки

> file redirects stdout to file
1> file redirects stdout to file
2> file redirects stderr to file
&> file redirects stdout and stderr to file

/dev/null - это нулевое устройство, оно берет любой ввод и выбрасывает его.Может использоваться для подавления любого выхода.

...