目录
文件描述符分配规则
重定向
把显示器文件关闭后,本来应该写给显示器文件的,却写到了普通文件。
close(1)就是把下标1的内容清空。然后下次再打开文件时,下标1的位置是最小的且没有占用的,所以就这个打开的文件struct file就放在这个下标里。
write只需要往1里面写,并不会考虑1是谁。
dup
把oldfd的内容拷贝给newfd。拷贝的是下标对应的内容。
输出重定向
追加重定向
从标准输入读取变成从文件读取。
输入重定向。
重定向会影响后面的程序替换吗?
重定向是修改进程内核数据结构的内容,程序替换是替换原本的程序是在内存层面上的,对进程不影响。
1号文件和2号文件
>输出重定向只会影响1号文件。
2号文件输出重定向
不写几号文件默认是1,写了就代表几号文件的输出重定向。
下标之间的重定向
2>&1表示把下标1的内容给下标2。