我在 OS X 操作系统上,我不明白命令中的第二个字段ls -l
是什么意思。假设我在一个空目录中,并在其中创建了一个目录:
mkdir folder
当我跑步时ls -l
我得到:
$ ls -l total 0 drwxr-xr-x 2 josh staff 68 Nov 17 15:45 folder
在这种情况下,指向目录的链接数为 2。我相信这些链接指的是原始目录名称和.
目录内的条目。
现在我添加一个文件(不是文件夹)到目录:
touch folder/file1
现在的输出ls -l
如下所示:
$ ls -l total 0 drwxr-xr-x 3 josh staff 102 Nov 17 15:47 folder
为什么现在三链接而不是两个?对于我添加的每个新文件,链接数都会增加一个。我明白为什么如果我向目录中添加一个新子目录,这是有道理的,因为..
会创建一个新链接(在新文件夹中),但不会创建一个新文件。这些额外的数字是什么?它们从何而来?
答案1
链接计数基本上是文件或目录使用位置的数量。当它变为零时,文件或目录将被删除。目录中的每个文件都使用该目录,只要目录中有文件,目录就不能被删除。