这是我参与11月更文挑战的第27天,活动详情查看:2021最后一次更文挑战」
一、前言
之前有几篇文章介绍了Linux下文件编程,那么目录和文件编程类似,也有一套函数,可以打开,读取、创建目录等。创建目录、文件除了命令以外(mkdir、touch
),都有对应的函数实现相同功能。
使用较多的就是遍历目录的功能,比如: 音乐播放器需要循环播放指定目录下所有音频文件,视频播放器需要遍历指定目录查找所有的视频文件加入到播放列表等等。
目录操作相关函数如下:
1 | cpp复制代码#include <sys/types.h> |
二、案例代码
2.1 遍历指定目录: 实现ls -a命令功能
1 | cpp复制代码#include <stdio.h> |
2.2 创建目录
1 | cpp复制代码#include <stdio.h> |
2.3 得到文件和目录的名称
1 | cpp复制代码#include <stdio.h> |
2.4 命令行*.c传参的问题
1 | cpp复制代码#include <stdio.h> |
2.5 使用目录操作函数实现ls *.c
使用目录操作函数实现ls *.c 或者ls *.mp3 类似的功能.
*号是特殊符号. 是通配符符号。 ./a.out \*.c
1 | cpp复制代码#include <stdio.h> |
2.6 拷贝单层目录
实现cp命令的功能. 支持拷贝单层目录.
例如: cp 123.c 456.c 或者 cp abc/ work/ -a
1 | cpp复制代码#include <stdio.h> |
本文转载自: 掘金