首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >目录od仿真

目录od仿真
EN

Unix & Linux用户
提问于 2012-07-14 16:02:27
回答 1查看 340关注 0票数 4

我想知道,od(1)过去为什么在UNIX中工作,但在GNU/Linux中却不能工作。服务器故障上有一个很好的答案。下一个问题是,您知道有什么工具可以模仿od行为来支持在GNU/Linux中转储目录数据吗?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2012-07-14 16:24:31

Linux不允许您执行普通的read(dir_name, buffer, sizeof(buffer) --它总是返回-1,并将EISDIR放在errno中。这可能是合理的,因为并非所有的文件系统都将目录作为文件。例如,常用的reiserfs没有。

您可以使用C程序中的open()系统调用来获取目录的文件描述符,但是类似于readdir(3) (从libc)调用getdents(2)来实际检索目录条目。每个文件系统实现中可能都有代码可以从文件系统用来存储目录条目的任何东西(文件、数据库、磁盘上B树)中创建struct linux_dirent

票数 6
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/43056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档