UNIX系统文件与设备I/O操作详解
1. 文件与目录操作
在UNIX系统中,文件和目录操作是基础且重要的部分。下面将详细介绍文件属性修改、目录操作、文件链接和重命名等内容。
1.1 修改文件属性
- chmod系统调用:用于更改文件的模式。它接受两个参数,一个是要更改的文件名的字符串,另一个是要设置的新模式(以整数形式给出)。模式通常以八进制指定,每个数字代表一组权限(所有者、组、其他用户)。如果文件不存在或运行程序的用户不是文件的所有者,调用将返回 -1 并设置
errno变量;成功时返回 0。 - chown系统调用:用于更改文件的所有权。它接受三个参数,分别是要更改的文件名的字符串、新的用户 ID 和新的组 ID。Berkeley UNIX 还提供了
fchown调用,它接受一个打开的文件描述符代替文件名。此调用通常仅限于超级用户。成功时返回 0;失败时返回 -1 并设置errno。
1.2 杂项文件系统例程
- 更改目录:程序可以使用
chdir系统调用更改其当前工作目录。它接受一个参数,即新目录的路径名。如果程序无法更改到该目录,将返回 -1 并设置errno。 - 删除和截断文件: