RE: Туплю «не по детски»


Главная Форумы POWER Systems AIX/Hardware Туплю «не по детски» RE: Туплю «не по детски»

#2192

Victor Sedyakin
Участник

http://ru.wikipedia.org/wiki//dev/null
* Чаще всего перенаправление в /dev/null используется для подавления стандартного вывода (выходного потока) и/или вывода сообщений об ошибках (потока диагностики) программы их перенаправлением в /dev/null, такое подавление чаще всего используется в командных сценариях (shell scripts) для подавления нежелательного вывода на консоль.

сделать что-то > /dev/null 2>&1

http://www.fedoralinux.ru/forum/viewtopic.php?id=632
Перенаправление вывода

Операторы greater-thans (>) в командах, переадресовывают вывод программы куда-нибудь. В данном случае, кое-что переадресовывается в /dev/null, и кое-что переадресовывается в &1.

Стандартные ввод, вывод и ошибка

Есть три стандартных значения ввода и вывода для программ. Стандартный ввод обычно получают от клавиатуры, если это — диалоговая программа, или из программы, если она обрабатывает вывод другой программы. Программа обычно выводит в стандартной вывод, и иногда выводит в стандартную ошибку. Это три дескриптора файла (Вы можете представить их как «каналы данных») называются: STDIN, STDOUT и STDERR.

Иногда их не именуют, а нумеруют! Встроенные нумерации для них соответственно — 0, 1 и 2. По умолчанию, если Вы не указывете номер или явно указываете номер 1, Вы имеете дело с STDOUT.

В данном случае, Вы видите, что команда выше переадресовывает стандартный вывод в/dev/null (часто называемый bit-bucket [битоприемник]), который является местом, куда Вы можете скинуть что-нибудь не нужное, затем переадресовывая стандартную ошибку в стандартный вывод.

Короткое объяснение этому, «весь вывод этой команды, нужно спихнуть в черную дыру.» Это — один хороший способ заставить программу быть действительно безмолвной!