为什么一个目录的硬链接数是2+子目录数?
Why is number of hard links for a directory 2 + the number of subdirectories?
当使用 ls -l
时,我注意到目录以 2 个硬 link 开头,并且每个子目录获得一个。我理解当前目录link.
算一个link每个子目录的父目录link..
算一个硬link , 但是:
为什么子目录不计入硬 link 的子文件?
为什么父目录link..
对于这个目录和都算作硬link父目录?
假设目录树如下
/a
/b
/c
/d
然后路径 /a/b
处的目录 b
有 4 个硬盘 link。 link 如下:
b
(来自父目录)
.
(来自目录本身)
c/..
d/..
文件不计入目录的 link 计数,因为文件没有嵌套的 ..
目录,因此不会指向目录。
我们可以计算出每个目录的hardlink个数:
- 一:3
a
(来自/
)
.
b/..
- c: 2
c
(来自 b)
.
- d: 2
d
(来自 b)
.
当使用 ls -l
时,我注意到目录以 2 个硬 link 开头,并且每个子目录获得一个。我理解当前目录link.
算一个link每个子目录的父目录link..
算一个硬link , 但是:
为什么子目录不计入硬 link 的子文件?
为什么父目录link
..
对于这个目录和都算作硬link父目录?
假设目录树如下
/a
/b
/c
/d
然后路径 /a/b
处的目录 b
有 4 个硬盘 link。 link 如下:
b
(来自父目录).
(来自目录本身)c/..
d/..
文件不计入目录的 link 计数,因为文件没有嵌套的 ..
目录,因此不会指向目录。
我们可以计算出每个目录的hardlink个数:
- 一:3
a
(来自/
).
b/..
- c: 2
c
(来自 b).
- d: 2
d
(来自 b).