摘要:此为Linux下目录的操作,通过学习目录操作使用C语言模拟读取目录信息等,进一步进行模拟程序的编写。
读取目录
- 打开目录
- 读取目录信息
- 关闭目录
打开目录
头文件dirent.h
DIR* opendir(目录名称);
成功: 地址
失败: NULL
关闭目录
closedir(DIR* 指针);
成功: 0
失败: -1
读取目录信息
struct dirent* readdir(DIR* 指针);
成功: 返回结构体指针
失败: NULL
方式: 循环自动读取
结构体内容:
dt_tpye:目录类型
dt_name:名称
tips:
如果文件名以“.”
引导,该文件不可见
.
为当前目录
..
为父目录
1 |
|
创建目录
在Linux中可以使用命令 mkdir
进行创建目录,也可以在程序设计中使用mkdir进行创建。
创建目录函数
mkdir (目录名称,权限参数)
成功返回: 0
失败返回: -1
切换目录函数
chdir(新目录名称)
成功返回: 0
失败返回: -1
例如:
- 给定源目录
- 遍历目录
- 创建一个新目录
- 将源目录加入到新目录中
假定:
- 一级目录,不进入子目录
- 只创建,不复制
可行性:
cpdir( source,dest)中
- source 要存在,可读
- dest 要不存在,可写
- 读取source状态,作为dest状态
- 创建目标目录
- source: readdir;chdir(dest)
- dest: mkdir/create;chdir(source)
- 关闭两个目录指针
1 |
|