ls -l 的第二个字段代表目录什么?

ls -l 的第二个字段代表目录什么?

我想就“ls”程序的问题寻求一些帮助:有人可以解释一下“ls -l”输出的第二个字段是什么意思吗?

这是一个例子:

sergey@home-ubuntu:~$ ls -l
total 64
drwxr-xr-x  8 sergey sergey  4096 мая 12 11:54 Desktop
drwxr-xr-x  5 sergey sergey  4096 апр 28 00:09 Documents
drwxr-xr-x 10 sergey sergey 12288 мая 12 23:22 Downloads
drwxrwxr-x  3 sergey sergey  4096 апр 12 15:22 Games
drwxrwxr-x  7 sergey sergey  4096 апр  2 23:02 MEGAsync
drwxr-xr-x  3 sergey sergey  4096 апр 15 21:18 Music
drwxr-xr-x  4 sergey sergey  4096 мая  7 09:10 Pictures
drwxr-xr-x  2 sergey sergey  4096 апр  2 22:24 Public
drwxrwxr-x  4 sergey sergey  4096 апр  9 17:57 Scripts
drwxr-xr-x  5 sergey sergey  4096 апр 16 22:42 snap
drwxrwxr-x  3 sergey sergey  4096 мая  9 21:20 Soft
drwxr-xr-x  2 sergey sergey  4096 апр  2 22:24 Templates
drwxrwxr-x  3 sergey sergey  4096 мая 12 23:39 Tests
drwxr-xr-x  3 sergey sergey  4096 мая 12 16:11 Videos
            ^
         this field i'm interested in

互联网说它显示了链接的数量文件,维基百科指定为硬链接,但我找不到有关目录的任何信息,但它在 ls -l 输出中表示。

由于无法创建到文件夹的硬链接,因此不清楚该字段的含义。

答案1

info ls

'-l'
'--format=long'
'--format=verbose'
除了每个文件的名称之外,还打印文件类型、文件模式位、硬链接数量、所有者名称、组名称、大小和时间戳(*note 格式化文件时间戳::),通常是修改时间戳(mtime,*note 文件时间戳::)。对于无法确定的信息打印问号。

所以,是的,这就是硬链接的数量。但这是什么意思呢?

简单:与目录中的文件数量非常相似。

一开始,当创建一个目录时,它以两个硬链接开头(将其视为.和 的硬链接..

$ mkdir anewone
$ ls -lad anewone
drwxr-xr-x 2 isaac isaac 4096 May 12 18:29 anewone
...........^^..... 2 hard links.

当你创造新的子目录在该目录中,硬链接的数量增加:

$ touch anewone/{a..e}
$ ls -lad anewone
drwxr-xr-x 2 isaac isaac 4096 May 12 18:30 anewone
...........^^..... No change for files.

$ mkdir anewone/{f..m}
$ ls -lad anewone
drwxr-xr-x 10 isaac isaac 4096 May 12 18:30 anewone
...........^^..... 8 new directories ==> 10 hard links.

有关的:

为什么新目录在添加任何内容之前其硬链接计数为 2?

目录的硬链接计数

相关内容