当我运行ls -ld /dir
输出时,无论是否有文件,总是给出大小= 512。
但是当我运行du -sh
输出时,会给出目录的实际大小(包括其内容)。
答案1
实际上,如果你的目录中有很多文件,你会得到一个更大的数字:当我在新目录中创建 10000 个空文件时,数字从 4096 变为 262144。
起始大小取决于创建文件系统时指定的文件系统和块大小。它指示目录保存了多少元数据(对于其中包含的文件和目录),而不是目录中的文件保存了多少数据。
比较:包含 10000 个空文件的目录
ls -ld . --> 262144
du -sh . --> 260K
包含 10000 个文件(每个文件 100000 字节)的目录:
ls -ld . --> 262144
du -sh . --> 977M
两组文件的元数据大小相同(它们也具有完全相同的名称)。