【问题标题】:Give the inode info, how can we get the file path in Java?给出 inode 信息,我们如何获取 Java 中的文件路径?
【发布时间】:2015-12-06 07:35:06
【问题描述】:

我们需要实现一个接受路径前缀和 inode 编号的方法。该方法需要返回具有 inode 值的文件的名称,如果这样的文件不存在,则返回 null。

String getFilePathByInode(String pathPrefix, long inode)

我能想到的一种天真的方法是遍历目录下的文件并检查每个文件的 inode 信息。有一个更好的方法吗?谢谢!

【问题讨论】:

    标签: java nio inode


    【解决方案1】:

    这是一项不平凡的任务,即使在 C 中也是如此,因为由于硬链接,一个 inode 可以出现在文件系统的多个位置。因此,您需要遍历整个文件系统。因此,问题的这个前提是一个坏主意。

    【讨论】:

    • 我们只需要检查给定路径下是否有与inode信息匹配的文件。
    • 这并没有降低问题的复杂性。 Path→inode 是一个简单的查找。但是,文件系统并非旨在支持 inode→path 查找。
    猜你喜欢
    • 2012-01-23
    • 1970-01-01
    • 2011-07-13
    • 1970-01-01
    • 1970-01-01
    • 2014-11-20
    • 1970-01-01
    • 2010-10-10
    • 1970-01-01
    相关资源
    最近更新 更多