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).