Você provavelmente pode fazer isso com arquivos comuns se não precisar de nenhuma simultaneidade. O princípio para pipes nomeados é o mesmo
Alterar
foo | \
bar | \
baz
Para
foo > foo.out
bar < foo.out > bar.out
baz < bar.out
Se o * .out é chamado de pipe, suspeito que os programas que o escrevem podem ficar bloqueados esperando que seus buffers de saída sejam drenados.