厕所表现出差异

厕所表现出差异

我有2个目录如下

/appl/exe/04/dat>ls -alrt
total 290
drwxrwxr-x  30 exceed   exceed      1024 Jun 11 09:04 ..
drwxrwxrwx   2 exceed   exceed    138240 Aug 17 03:56 .

/appl/exe/13/dat>ls -alrt
total 18
drwxrwxr-x  28 exceed   exceed      1024 Jul  6 13:12 ..
drwxrwxrwx   2 exceed   exceed      7680 Aug 16 20:46 .

为什么厕所显示出差异?这是什么意思?

wc -l /appl/exe/04/dat -> 显示输出如下:

   4 /appl/exe/04/dat

wc -l /appl/exe/13/dat -> 显示输出如下:

   0 /appl/exe/13/dat

答案1

首先,请注意您正在运行wc -l运行目录。该命令用于计算文本文件中的行数。所以 wc 基本上是查看文件系统用来表示目录的内部二进制格式,并计算字节 0x0a 出现的次数,这可能不会告诉您任何有用的信息。

也就是说,即使两个目录都是空的,请注意 的大小04/dat要大得多。这意味着它曾经包含许多文件,但后来已被删除。但删除文件并不会删除目录块中的所有痕迹。根据文件系统的不同,它可能只是将索引节点归零或将目录条目合并到块的前一个条目中。

因此,一个目录中的剩余 CRUD 基本上比另一个目录中的剩余 CRUD 多得多,因此更多 CRUD 包含更多换行符(字节 0xa)也就不足为奇了。请注意,这些字节甚至不一定是文件名的一部分,它们可能是数字的一部分。

相关内容