unistd.h
unistd.h
是 C 和 C++ 程序設計語言中提供對 POSIX 操作系統 API 的訪問功能的頭文件的名稱。是Unix Standard的縮寫。該頭文件由 POSIX.1 標準(單一UNIX規範的基礎)提出,故所有遵循該標準的操作系統和編譯器均應提供該頭文件(如 Unix 的所有官方版本、 Mac OS X、Linux 等)。
對於類 Unix 系統,unistd.h
中所定義的接口通常都是大量針對系統調用的封裝(英語:wrapper functions),如 fork
、pipe
以及各種 I/O 原語(read
、write
、close
等等)。
文件內容
函數
名稱 | 描述 |
---|---|
access | 判斷指定的文件或目錄是否存在、是否可讀、是否可寫 |
alarm | 在指定秒數後生成一個SIGALRM信號 |
brk | 改變分配給調用進程的空間量 |
chdir | 將指定路徑成為當前工作目錄 |
chmod | |
chown | |
chroot | |
close | 收回指定的文件描述符 |
ctermid | |
cuserid | |
dup | 複製一個現存的文件描述符 |
dup2 | |
execl | 用一個新的進程映像替換當前的進程映像 |
execle | |
execlp | |
execv | |
execve | |
execvp | |
fchdir | 將指定路徑成為當前工作目錄 |
fchmod | |
fchown | |
fork | 創建當前進程的副本 |
fpathconf | |
fsync | |
ftruncate | |
getcwd | 獲取當前工作目錄的絕對路徑 |
getdomainname | |
getegid | 獲取調用進程的有效組ID |
geteuid | 獲取調用進程的有效用戶ID |
getgid | 獲取調用進程的實際組ID |
getgroups | |
getlogin | 獲取用戶使用其登錄的名稱 |
getlogin_r | |
getopt | |
getpass | |
getpagesize | |
getpgid | |
getpid | |
getppid | |
getsubopt | |
gethostid | 檢索當前主機的32位標識符 |
getuid | |
getusershell | |
getwd | |
isatty | |
lchown | |
link | |
nice | |
lseek | |
pathconf | |
pause | |
pipe | |
pread | |
pwrite | |
read | |
readlink | |
rmdir | 刪除一個目錄,該目錄只有為空時才被刪除。 |
sbrk | |
setegid | |
seteuid | |
setgid | |
setpgid | |
setpgrp | |
setsid | |
setuid | |
sleep | |
swab | |
symlink | |
sysconf | |
tcgetpgrp | |
tcsetpgrp | |
truncate | 將文件截斷為指定的長度 |
ttyname | |
ttyname_r | |
unlink | |
usleep | |
vhangup | |
write | |
__gethostname | |
_close | |
_execve | |
_exit | |
_fork | |
_getpid | |
_link | |
_lseek | |
_read | |
_sbrk | |
_unlink | |
_write |
參考文獻
- The Open Group. Unistd doc. [2020-11-07]. (原始內容存檔於2022-01-25).