在 Debian(以及一般的 Linux/Unix 系统)里,opendir 是 C 语言库函数,不是命令行命令,所以没有“参数”可以直接设置。
我先说明常见误解,再给你正确用法。
opendir 是什么opendir 定义在 <dirent.h> 中,用于打开一个目录流:
#include <dirent.h>
DIR *opendir(const char *name);
name:目录路径(字符串)DIR *,失败返回 NULL✅ 只有一个参数:目录路径 ❌ 不存在像命令行那样的“选项参数”
DIR *dir = opendir("/var/log");
if (dir == NULL) {
perror("opendir");
}
过滤是在 readdir 之后做的:
struct dirent *entry;
while ((entry = readdir(dir)) != NULL) {
if (entry->d_name[0] == '.') continue;
}
opendir 做不到,需要:
stat()readdir()nftw()这是实现相关的,没有可移植参数
fopen 那样设 bufferls 命令参数?find 命令参数?可以告诉我你用的语言或场景,比如:
我可以直接给你对应示例。
Debian 下
opendir没有可设置的“参数”,只能传目录路径;其他行为靠readdir、stat等函数实现。
如果你愿意,可以把你的代码或需求贴出来,我帮你改。