当从一个进程连接数据流到另一个进程时,使用术语管道 (pipe)。
通常是把一个进程的输出通过管道连接到另一个进程的输入。
对于shell命令来说,命令的连接是通过管道字符来完成的: cmd1 | cmd2 这实际上是把一个进程的输出直接传递给另一个进程的输入。
具体地讲:
cmd1的标准输入来自终端键盘。
cmd1的标准输出传递给cmd2,作为它的标准输入。
cmd2的标准输出连接到终端屏幕。
两个程序之间传递数据的一种简单方法是使用popen和pclose。
pipe() pipe() pipe() pipe()系统调用
pipe()是一个底层函数,通过pipe()在两个进程之间传递数据时不需要启动一个shell来解释请求的命令,此外,该函数还提供了 对读写数据的更多控制。
pipe()的原型如下: #include