在Unix文件系统中,目录只是具有特殊目录结构的特殊文件,其中包含子文件名,文件名大小和inode引用号.

超出此范围的实际文件元数据通常存储在inode本身中.

我的问题是.如何以原始形式而不是解释形式读取实际的特殊目录结构.

是的我知道你可以使用ls来查看那里的文件.那不是我想要的.


解决方法:

简单的答案是你想要做的是读取目录文件,
用cat.,cat / etc或cat mydir这样的命令.
当然,因为这是“原始”数据,
你想要使用一个更适合的程序
以人性化的方式显示非ASCII数据;例如,hexdump或od.

不幸的是,正如When did directories stop being readable as files?中讨论的那样,大多数版本的Unix
在过去二十年左右发布的不允许这样做.
所以你的问题的答案可能是
“找到一个仍然允许读取目录的Unix版本”.
AIX,大多数版本的BSD,
除最新版本的Solaris之外的所有版本都可能符合条件.
找到允许它的Linux可能需要使用时间机器.

标签: linux, files, filesystems

相关文章推荐

添加新评论,含*的栏目为必填