3.文件与I/O 文件目录

本文详细介绍了Linux下的目录操作,包括目录权限、创建与删除目录、目录项结构、打开与关闭目录、读取目录、定位及回卷目录文件、进程的工作目录及其改变。重点讨论了目录权限的含义,mkdir、rmdir函数的使用,以及chdir函数在改变进程工作目录中的作用。
摘要由CSDN通过智能技术生成

 

 

目录操作:目录文件本质上是一个文件,但是实际上其内容又与普通文件不同。目录文件是一种特殊的文件,其内容存储着目录下所有文件的目录项。用户可以像普通文件一样读写目录,不过需要使用一组特殊的系统调用。

1 目录权限

目录文件的访问权限和普通文件是一样的,对于目录权限而言有:

     S_IRUSR     :0400:用户-读
     S_IWUSR     :0200:用户-写
     S_IXUSR     :0100:用户-执行
     S_IRGRP     :0040:用户组-读
     S_IWGRP     :0020:用户组-写
     S_IXGRP     :0010:用户组-执行
     S_IROTH     :0004:其他用户-读
     S_IWOTH     :0002:其他用户-写
     S_IXOTH     :0001:其他用户-执行

其中读、写、可执行分别表示:

  •      读          :表示可以列出该目录所有的文件
  •      写          :表示可以创建文件、删除文件
  •      可执行  :表示可以打开目录,路径有效,一般都要有这个权限

测试目录文件:S_ISDIR(stat结构体变量.st_mode);为0,表示是目录文件;为非0,表示非目录文件。

设置用户ID位对目录没有意义,但是设置用户组ID对目录却有很大的意义。因为如果设置用户组ID被设置,则在该目录下创建的任何目录和文件的组ID都将设置为该目录的组ID。

2 目录操作

2.1 创建一个目录 mkdir

linux下使用mkdir函数来创建一个目录。mkdir函数的接口:

#include <sys/stat.h>
#include <sys/types.h>
int mkdir(const char *pathname, mode_t mode);
参数pathname     :要创建的目录的路径。
参数mode          :目录的操作权限(一般情况下,一定要加上可执行的权限)。
函数成功执行返回0,失败返回-1。

注意:

  1. 一个目录总要包含两个默认的目录项,即.(当前目录)和..(上一级目录)。<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值