Скажи, что у меня есть
node foo.js | node bar.js
есть ли способ передать дескриптор stdin foo в bar?
У меня есть редкий случай, когда мне хотелось бы общаться в обратном порядке по ходу дела.
По крайней мере я знаю, что я мог бы отправить node bar.js pid узла foo.js. Учитывая этот pid, в *nix я должен иметь возможность писать в stdin foo, используя:
/proc/<pid>/fd/0
но есть ли способ сделать то же самое на MacOS?
решение1
В общем случае нет, поскольку дескриптор записи stdin foo
находится только в руках его родительского процесса ( foo
видит только дескриптор чтения)... Вам нужно настроить специальный канал (анонимный или FIFO) между ними; и это в любом случае лучше, поскольку вы не знаете, что произойдет, если bar
запись в этот дескриптор будет произведена одновременно с записью в foo
родительский процесс.