Linux下当使用 ls > file 命令,可以将原本输出在屏幕上的文字重定向到file文件中(如果没有file文件则创建之)
我们可以利用dup,dup2函数也实现一下重定向。它们的接口如下:
#include <unistd.h>
int dup(int oldfd);
int dup2(int oldfd, int newfd);
dup(fd)是对fd进行一份拷贝,将当前最小未被使用的文件描述符返回。
dup2(fd)则是对fd进行拷贝,返回指定参数newfd,如果newfd已经打开,则先将其关闭。
如上图,当我们使用dup(1)ÿ