温馨提示×

centos readdir能读隐藏吗

小樊
33
2026-10-09 01:30:58
栏目: 智能运维

在 CentOS(本质是 Linux 的 readdir 接口) 中,readdir 是可以读取到隐藏文件的。

关键点说明

  1. 什么是隐藏文件

    • 在 Linux 中,以 . 开头的文件或目录就是“隐藏文件”
    • 例如:.bashrc、.ssh/、.cache/
  2. readdir 的行为

    • readdir() 会返回目录下的 所有条目
    • 包括隐藏文件
    • 不会自动过滤 . 开头的文件
  3. 为什么 ls 看不到隐藏文件

    • 不是 readdir 的问题
    • 而是 ls 默认不显示隐藏文件
    • 需要:ls -a

示例(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;
}

运行后会看到:

.
..
.bashrc
.hidden_file
test.txt

总结

✅ CentOS 下 readdir 能读隐藏文件
❌ ls 默认不显示,但和 readdir 无关
✅ 是否“处理”隐藏文件,由你的程序逻辑决定

如果你是在 shell / Python / C++ / Java 里用 readdir 相关接口,也可以告诉我,我可以给对应示例。

0 踩