Именованный конвейер (Named pipe)

Именованный конвейер – это инструмент, работающий по принципу обычного конвейера но с некоторыми усовершенствованиями.

Именованный конвейер представляет собой файл (на самом деле, это не совсем файл, но с некоторыми допущениями можно так считать), в который другие могут писать данные, а другие программы могут их читать в порядке в котором они были записаны по принципу обыкновенного конвейера.

Как использовать:

mkfifo /tmp/pipe1

создать именованный конвейер /tmp/pipe1

cat myfile.txt > /tmp/pipe1

вывести содержимое файла myfile.txt в pipe.

После этого в другой консоли выполняем:

cat /tmp/pipe1

что выведет на экран содержимое конвейера.

Практическое применение эту технологию можно применить, например, для парсинга логов syslogd, который умеет перенаправлять вывод в именованный pipe, либо использовать в своих скриптах для вывода промежуточных данных, требующих последующей обработки

Моя презентация по теме.