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