我有一个关于dup2()的问题。它到底是做什么的?是否复制文件描述符?
我不太理解dup2()的用法。我试过谷歌,但还是不太明白它的意思。
发布于 2010-10-13 05:19:25
它接受两个参数,它们是描述符。它使第二个等价于第一个。您可以互换使用它们,但有几个小的例外...有关用例的更多详细信息,请参阅手册页。
例如,您可以这样做,将控制台描述符1、2或3重定向到其他设备或文件。您不想关闭它们然后重新打开的原因是,不能保证您将在下一次打开调用中收到相同的数字描述符。这就是为什么您要使用open()来获取文件描述符,然后使用dup2(new_descriptor, 1);来强制描述符1转到控制台以外的其他地方。
https://stackoverflow.com/questions/3918962
复制相似问题