Há uma pergunta semelhante no Stack Overflow:
A idéia é usar pipes nomeados, no bash você pode simplesmente fazer:
command_that_writes_to_stdout | tee >(command_that_reads_from_stdin)
Mas, no caso geral, use mkfifo
, por exemplo:
mkfifo some_pipe
command_that_writes_to_stdout | tee some_pipe \
& command_that_reads_from_stdin < some_pipe
rm some_pipe
(ambos os exemplos são da resposta do Stack Overflow)