温馨提示×

ubuntu readdir能读隐藏文件吗

小樊
44
2026-09-15 19:25:24
栏目: 智能运维

在 Ubuntu(Linux)下,readdir() 可以读取到隐藏文件。

说明

  • 在 Linux 中,“隐藏文件”只是以 . 开头的文件/目录(如 .bashrc、.config)。
  • readdir() 会返回目录下的所有条目,包括:
    • 普通文件
    • 目录
    • 隐藏文件(. 开头)
    • 当前目录 . 和上级目录 ..

示例(C 语言)

#include <dirent.h>
#include <stdio.h>

int main() {
    DIR *dir = opendir(".");
    struct dirent *entry;
    while ((entry = readdir(dir)) != NULL) {
        printf("%s\n", entry->d_name);
    }
    closedir(dir);
    return 0;
}

这个程序会列出当前目录下所有文件,包括隐藏文件。

常见误区

  • ls 默认不显示隐藏文件,需要 ls -a
  • 但 readdir() 默认就会读出来
  • 如果你“不想处理隐藏文件”,需要自己过滤:
if (entry->d_name[0] == '.') continue;

总结

✅ readdir() 能读隐藏文件
❌ 它不会自动忽略 . 开头文件

如果你是用 Python / shell / 其他语言,也可以告诉我,我可以对应说明。

0 踩