从这个page中,我读到:
请记住,文件“ ..”始终指向父目录。记住,当我创建目录时,内核会创建文件“。”。和目录中的“ ..”。
因此,每次我在当前目录“下面”创建目录时,新目录都有一个条目“ ..”-父目录。
这意味着当我创建文件时,到父目录的硬链接数量不会增加。
我在Fedora虚拟机上尝试过:
[vagrant@trial ~]$ mkdir foo
[vagrant@trial ~]$ ls -la foo
total 0
drwxrwxr-x. 2 vagrant vagrant 6 Jun 25 05:42 .
drwx------. 4 vagrant vagrant 106 Jun 25 05:42 ..
[vagrant@trial ~]$ touch foo/hello
[vagrant@trial ~]$ ls -la foo
total 0
drwxrwxr-x. 2 vagrant vagrant 19 Jun 25 05:42 .
drwx------. 4 vagrant vagrant 106 Jun 25 05:42 ..
-rw-rw-r--. 1 vagrant vagrant 0 Jun 25 05:42 hello
foo
的硬链接仍然是两个,这是我所期望的。
但是当我在Mac OS X上尝试时,它确实是有线的:
➜ tmp mkdir foo
➜ tmp ls -la foo
total 0
drwxr-xr-x 2 laixintao wheel 64 Jun 25 20:45 .
drwxrwxrwt 27 root wheel 864 Jun 25 20:45 ..
➜ tmp touch foo/hello
➜ tmp ls -la foo
total 0
drwxr-xr-x 3 laixintao wheel 96 Jun 25 20:46 .
drwxrwxrwt 27 root wheel 864 Jun 25 20:45 ..
-rw-r--r-- 1 laixintao wheel 0 Jun 25 20:46 hello
foo
的硬链接增加到三个。