在 CentOS 系统中,你可以使用 readdir
函数来读取目录中的文件。readdir
是一个 C 语言库函数,通常用于编写 C 程序来遍历目录结构。以下是一个简单的示例,展示如何使用 readdir
在 CentOS 上进行文件搜索:
首先,确保你已经安装了 CentOS 系统,并且已经配置好了开发环境。
创建一个新的 C 文件,例如 readdir_example.c
,并使用以下代码:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <string.h>
int main(int argc, char *argv[]) {
DIR *dir;
struct dirent *entry;
if (argc != 2) {
fprintf(stderr, "Usage: %s <directory>\n", argv[0]);
exit(EXIT_FAILURE);
}
dir = opendir(argv[1]);
if (dir == NULL) {
perror("opendir");
exit(EXIT_FAILURE);
}
printf("Files in directory '%s':\n", argv[1]);
while ((entry = readdir(dir)) != NULL) {
printf("%s\n", entry->d_name);
}
closedir(dir);
return 0;
}
gcc
编译器编译 C 文件:gcc readdir_example.c -o readdir_example
./readdir_example /path/to/directory
这将显示指定目录中的所有文件和子目录。
如果你想要搜索特定类型的文件,可以在遍历目录时检查文件名。例如,要搜索所有的 .txt
文件,可以修改 while
循环中的条件:
while ((entry = readdir(dir)) != NULL) {
if (strstr(entry->d_name, ".txt") != NULL) {
printf("%s\n", entry->d_name);
}
}
这将仅显示具有 .txt
扩展名的文件。