檔案描述符的複製

2021-08-20 14:35:04 字數 558 閱讀 7035

#include int dup(int fd);

int dup2(int fd, int fd2);

這兩個函式可用來複製現有的檔案描述符。

成功返回檔案描述符,出錯返回-1

dup返回當前可用檔案描述符中的最小數值。

dup2中,fd2指定新的檔案描述符,如果fd2已經開啟,先將其關閉;如果fd等於fd2,返回fd2,不關閉。

例:利用子程序實現輸出重定向

#include #include #include #include #include int main() 

pid_t pid;

pid = fork();

if (pid<0)

else if (pid == 0)

else sleep(1);

return 0;

}

不需要加close(fd),子程序結束後,開啟的檔案會被關閉。

成功執行完exec函式後,子程序就會結束,只有失敗才會繼續執行exec函式以後的語句。

mysql 檔案描述符 檔案描述符

toc 首先,linux的世界裡一切皆為檔案,無論是裝置還是乙個socket連線。檔案又可分為 普通檔案 目錄檔案 鏈結檔案和裝置檔案。檔案描述符 file descriptor 是核心為了高效管理已被開啟的檔案所建立的索引,其是乙個非負整數 通常是小整數 用於指代被開啟的檔案,所有執行i o操作的...

檔案描述符

檔案描述符 是個很小的正整數,它是乙個索引值,指向核心為每乙個程序所維護的該程序開啟檔案的記錄表。檔案描述符的優點 相容posix標準,許多 linux 和unix 系統呼叫都依賴於它。檔案描述符的缺點 不能移植到unix以外的系統上去,也不直觀。基於檔案描述符的輸入輸出函式 open 開啟乙個檔案...

檔案描述符

作業系統程序表中存放各個檔案進行檔案描述 核心 kernel 利用檔案描述符 file descriptor 來訪問檔案。檔案描述符是非負整數。開啟現存盤案或新建檔案時,核心會返回乙個檔案描述符。讀寫檔案也需要使用檔案描述符來指定待讀寫的檔案。目錄檔案描述符概述 如何建立檔案描述符 使用的好處 缺點...