在Ubuntu中,你可以使用C语言的dirent.h库中的opendir()函数来遍历目录。以下是一个简单的示例,展示了如何使用opendir()和readdir()函数遍历目录中的所有文件和子目录:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <string.h>
int main() {
DIR *dir;
struct dirent *entry;
// 打开目录
dir = opendir("/path/to/your/directory");
if (dir == NULL) {
perror("opendir");
return EXIT_FAILURE;
}
// 遍历目录中的所有文件和子目录
while ((entry = readdir(dir)) != NULL) {
printf("%s\n", entry->d_name);
}
// 关闭目录
closedir(dir);
return EXIT_SUCCESS;
}
将/path/to/your/directory替换为你要遍历的目录路径。编译并运行此程序,它将输出目录中的所有文件和子目录。
注意:这个示例程序没有处理符号链接和隐藏文件。如果你需要处理这些情况,你需要添加额外的代码来检查entry->d_type和文件名是否以.开头。