dup、dup2,复制文件描述符
int dup(int oldfd); //返回文件描述表中没有被占用的最小可用的描述符,新旧描述符作用相同
int dup2(int oldfd, int newfd); //如果new已经被打开,先关闭再拷贝就会指向同一个文件,如果old和new是同一个就直接返回旧的
不管这么复制,文件指针只有一个。
其余请参考:https://blog.csdn.net/silent123go/article/details/71108501
fcntl、修改已打开文件的属性
int fcntl(int fd, int cmd, long arg)
主要使用于获得/设置文件标记 F_GETFL (自读打开 O_RDONLY、只写打开 O_WRONLY、读写打开 O_RDWR、执行打开 O_EXEC、搜索打开目录 O_SEARCH、追加写 O_APPEND、非阻塞模式 O_NONBLOCK)
F_SETFL可更改几个标识(O_APPEND、O_NONBLOCK)