find 命令中的 -links 选项

find 命令中的 -links 选项

请解释一下 find 命令中 -links 选项的用途。手册页没有提供太多信息。我们使用的某些脚本在 find 命令中有一个选项 -links 0。

我正在使用以下命令来执行此操作。

find /data -type f -links 0 -ls

答案1

在 Linux 上,文件数据存储在 inode 中,这些 inode 没有名称。每次您创建指向文件的链接(硬链接),即为其添加名称时,此链接计数就会增加。如果您删除一个文件,则链接计数会减少。当它达到 0 时,文件将被删除。

在某些情况下,不会发生删除。我们讨论的是孤立的 inode(有数据但没有人指向它们)。链接数等于 0。

您使用或使用任何文件浏览器所看到的任何文件ls至少具有等于 1 的链接数。

答案2

好吧,从手册页上看:

-links n
    File has n links.

因此,在您发布的命令中,它将过滤具有零链接的文件。

相关内容