Для перенаправления вывода команды на ввод другой команды используется механизм каналов. Для этого две команды объединяются при помощи символа вертикальной черты |
. На клавиатуре PC этот символ расположен рядом с клавишей "забой" (Backspace), что расположена над клавишей "ввод" (Enter).
Например:
find /etc 2>/dev/null | grep local
Команда find /etc 2>/dev/null
выведет список всех файлов и каталогов в каталоге /etc
и всех файлов в подкаталогах каталога /etc
. Вывод сообщений об ошибках этой команды будет перенаправлен на так называемое нулевое устройство, то будет выведен в никуда.
Вывод этой команды перенаправляется на вход канала, выход которого соединяется с потоком ввода команды grep local
.
Команда grep local
отфильтрует данные потока ввода и выведет только те строки, которые содержат local.