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)