LINUX.ORG.RU

Bash: запись в предыдущий процесс в конвейере

 ,


0

1

Всем здравствуйте! Возник следующий вопрос. Допустим, имеется вот такая цепочка процессов:

proc A | proc B | proc C | ...

И я хотел бы, чтобы процесс «C» писал данные в файловый дескриптор №3 процесса A. Это как-то возможно вообще указать? Ну то есть понятно, что внутри скриптов, которые тут представлены процессами A и C, я напишу код по чтению и записи в соответствующий файловый дескриптор, но как их друг с другом связать?

Также готов рассмотреть вариант, когда вот так:

proc A | proc B | proc C

И stdout процесса «C» нужно как-то направить в stdin процесса A (типа замкнуть круг).

Гойда!

anonymous
()

в процессе A читай содержимое mkfifo файла, а proc C перенаправляй в | cat > fifo

Spoofing ★★★★★
()

Выглядит как будто тебе нужен нормальный язык программирования с pipe(), dup(), fork() и exec() хотя бы питон какой-нибудь

cobold ★★★★★
()
Ответ на: комментарий от cobold

С нормальным языком у него и проблема отпадёт.

t184256 ★★★★★
()

С fifo самый нормальный вариант, но в порядке брейнсторма добавлю, что можно сохранить PID первого процесса, а третий перенаправить в /proc/$pid1/fd/0.

Legioner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.