理解文件描述符后,通过下面的代码,理解重定向

查看结果:

程序解释:
我们关闭了标准输出,根据文件描述符的分配规则,新打开的文件myfile使用文件描述符1,之后我们输出的内容,输出到了myfile文件中,原理如下:

dup2接口:
int dup2(fd1, fd2)
fd1 和 fd2是两个文件描述符
这个函数会先判断fd1和fd2是不是同一个值,如果是的就直接返回fd2。如果不是的,它会先把fd2指向的文件关闭,然后把下标为fd1的指针赋值给下标为fd2的指针然后把fd2返回


重点向的相关指令可参考🔗