管道(pipe)能用于多个程序之间的通信吗?

是否可以用其中一个程序,fork出多个子进程,每个子进程exec一个程序,每个程序之间都可以建立管道吗?
还是有别的办法?

每个子进程当然可以exec一个程序,fork只能产生两个子进程吧,原理上管道就是利用fork机制建立,从这个角度讲,管道只能用于两个进程间的通信,不能用与多个(>3)进程间的通信且两个进程必须是最终由同一个进程所派生的进程,管道传输数据也是单向的。

可以啊,管道就是用于实现进程间通信的。