如何获取文件夹的硬链接数量?

如何获取文件夹的硬链接数量?

我在Mac上。但是,我使用gstat(GNU stat),所以我的理解是行为应该与 linux 匹配。

cd到一个文件夹。然后我用gstat --format=%h ..输出是65.

接下来,我使用gfind . -maxdepth 1 | wc -l.输出是64.

我希望该gstat命令返回该文件夹的硬链接数量。但它似乎返回了直接包含在其中的文件+文件夹的数量,+1)。

我有以下问题:

  1. 如何获取文件夹的硬链接数量?
  2. 硬链接对于文件夹的作用与对于文件的作用是否不同?
  3. 文件夹只是一种特殊类型的文件,还是完全不同?
  4. 文件夹有索引节点吗?
  5. 文件夹的索引节点是否以任何方式连接到其中包含的文件和文件夹的索引节点?

我不知道这是否重要,但以防万一,这里有一些关于我的机器和版本的更多细节:

  • 芯片:苹果M1 Max
  • macOS:风险投资 13.5.2
  • gstat版本:stat(GNU coreutils)9.1

mount输出(有关我的文件系统格式的信息):

/dev/disk3s1s1 on / (apfs, sealed, local, read-only, journaled)
devfs on /dev (devfs, local, nobrowse)
/dev/disk3s6 on /System/Volumes/VM (apfs, local, noexec, journaled, noatime, nobrowse)
/dev/disk3s2 on /System/Volumes/Preboot (apfs, local, journaled, nobrowse)
/dev/disk3s4 on /System/Volumes/Update (apfs, local, journaled, nobrowse)
/dev/disk1s2 on /System/Volumes/xarts (apfs, local, noexec, journaled, noatime, nobrowse)
/dev/disk1s1 on /System/Volumes/iSCPreboot (apfs, local, journaled, nobrowse)
/dev/disk1s3 on /System/Volumes/Hardware (apfs, local, journaled, nobrowse)
/dev/disk3s5 on /System/Volumes/Data (apfs, local, journaled, nobrowse, protect)
map auto_home on /System/Volumes/Data/home (autofs, automounted, nobrowse)

相关内容