[英]Redirecting input and output of a child process in C
我想编写一个ac程序,我在其中创建多个子进程并将其输入和输出重定向到不同的文件描述符。我搜索了很多但找不到相关结果。 请帮忙 。
从dup开始。 你真的需要更努力地搜索。 这有很多材料。
答案取决于您的操作系统。 在类UNIX系统上,使用dup()
和dup2()
来复制文件描述符; 每个子进程在exec
时将从父进程继承当前的文件描述符集。 所以通常你fork
子进程,将文件描述符0,1和2设置为你想要的任何东西,然后exec()
实际的子程序。
我最喜欢的是forkpty 。 此函数会分叉子项并为其stdin / stdout提供文件描述符。 你可以在分叉后使用exec,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.