dup和dup2应用实例(dup跟APUE有出入,close+dup=dup2?)

dup/dup2函数

有时我们希望把标准输入重定向到一个文件,或者把标准输出重定向到一个网络连接。

dup()与dup2()能对输入文件描述符进行重定向。

函数原型如下:


       dup函数创建一个新的文件描述符,该新文件描述符和原有文件描述符oldfd指向相同的文件、管道或者网络连接。并且dup返回的文件描述符总是取系统当前可用的最小整数值。dup2和dup类似,不过它将返回第一个不小于oldfd的整数值。


        dup和dup2成功返回新的文件描述符,失败则返回-1并设置errno。

1、打开一个新文件
2、dup关掉标准输出文件符(close+dup=dup2?),dup2不需要这一步
3、调用dup/dup2进行文件描述符重定向
4、此时文件描述符变为1
5、将所要打印数据重定向到文件中


运行结果如下:


原文地址:https://www.cnblogs.com/zlcxbb/p/6472564.html