dup和dup2
dup就是拷贝原来一个副本,一般就是起到保存的作用
dup2 = dupto,拷贝文件描述符,返回的是新文件描述符,指向了原来文件描述符的文件
./dup2 test1 test 2
//分析:是往fd2写的,但实际1234567是加到了fd1中,即test1中
代码👇
fd3指向一个文件,fd4也指向一个文件,dup2之后,fd4就指向了fd3的文件,所以上述代码返回的是test2但是内容是写到了test1中(xX
将输入到屏幕的输入到文件中(重定向标准输出
重定向输出块代码见框框👇,第一个参数是fd1,第二个是输出STDOUT_FILENO
整体理解,记住是拷贝文件描述符就ok
fcntl实现dup
代码👇
结果👇