Pipes

Материал из sysadm
Перейти к навигации Перейти к поиску


pipe - анонимный канал, создается временно и удаляется автоматически

# пример
ps -ef | grep mc

Когда интерпретатор шел встречает символ '|', он делает следующее:

  1. создает временный анонимный канал
  2. запускает процесс слева, соединив его стандартный поток вывода с этим каналом
  3. запускает процесс справа, соединив его стандартный поток ввода с этим каналом
  4. когда оба процесса завершаются, то временный анонимный поток закрывается

named pipe - это канал с именем, его можно создать и удалить командой, автоматически он не удаляется.

mkfifo <name> - создает канал с заданным именем, при этом в текущем каталоге будет создан специальный файл с тем же именем

mknod - ?