我有一个文件命名xyx.txt
并ls -l
显示如下:
-rw-r--r-- 1 MRG staff 8000000 Jul 7 01:30 xyz.txt
但是当我开火时du xyz.txt
,下面是输出:
15632 xyz.txt
有人可以告诉我为什么会有差异以及磁盘中文件的实际大小是多少。谢谢。
注意::
OS info
Mac OS X Lion 10.7.5
我有一个文件命名xyx.txt
并ls -l
显示如下:
-rw-r--r-- 1 MRG staff 8000000 Jul 7 01:30 xyz.txt
但是当我开火时du xyz.txt
,下面是输出:
15632 xyz.txt
有人可以告诉我为什么会有差异以及磁盘中文件的实际大小是多少。谢谢。
注意::
OS info
Mac OS X Lion 10.7.5
UNIX 文件系统允许稀疏文件。未分配的块读为 0,但不占用磁盘空间。该du
命令将给出实际分配的块数,同时ls
将显示已分配块和未分配孔的总大小。
也就是说,这不是这里发生的事情。
du
显示文件占用的 512 字节块 (15632) 的总数。 ls
正在向您显示实际文件大小(8,000,000 字节)。512 * 15632 = 8003584,即 8,000,000 向上舍入到下一个 4K 字节边界。
这个文件不是稀疏的,两个数字是一致的。
从手册页:
该
du
实用程序显示每个文件参数的文件系统块使用情况[...]
如果
BLOCKSIZE
未设置-k
且未指定选项,则块数将以 512 字节块显示。