В Linux: запись в FIFO - PullRequest
       28

В Linux: запись в FIFO

1 голос
/ 17 июня 2009

Я создал новый FIFO с помощью команды mkfifo. У меня есть текстовый файл f.txt. Я хочу записать текстовый файл в мой FIFO. Как? Для этого есть команда unix?

Ответы [ 3 ]

8 голосов
/ 17 июня 2009

Вы можете использовать cat:

mkfifo /tmp/foo
cat f.txt > /tmp/foo

Вы увидите, что он зависает, потому что вам также нужен процесс чтения, как cat.

cat /tmp/foo

Вы также можете запустить сначала процесс чтения, а затем - процесс записи.

3 голосов
/ 17 июня 2009

Просто перенаправить в канал:

mkfifo /tmp/pipe
cat f.txt > /tmp/pipe &
cat /tmp/pipe

Обратите внимание, это примерно то, что делает cat f.txt | cat, но это именованный канал вместо анонимного канала.

2 голосов
/ 17 июня 2009

То же, что и любой файл, который я думаю:

cat f.txt > myfifo

Большинство вещей можно рассматривать как файлы в Linux / Unix

...