关于文件描述符的重定向,有三种方法,分别为dup(),dup2(),dup3()。
下面即为三种函数的原型,本文主要介绍前两种函数的使用。其中dup()接受一个参数,将旧的文件描述符重定向到新的文件中。
而dup2()接受两个参数,一个为新的文件描述符,另一个为旧的文件描述符。dup3()的原理同dup2()。
下图是三种函数的相关描述:
这些函数的返回值为,成功则返回新的文件描述符,失败返回-1。
进行dup()和dup2()的程序编写,其中注释的为dup()的相关语句。
本程序经过测试是正确的,会在相同目录下生成一个名为 log的文件,运行dup()函数后再显示屏上输入的内容全都写入log文件中。