无需遍历整个文件系统即可检索文件计数

Retrieve file count without walking through entire file system

我在 vxworks 6.9 平台上。我想知道一个文件夹中有多少个文件。文件系统是DOSFS(FAT)。我知道如何做到这一点的唯一方法是简单地遍历文件夹中的每个文件并计数。文件夹中的文件越多,成本就越高。有没有更明智的方法来做到这一点?是否存在一些内部数据库或文件夹中所有文件的数量?

FAT 文件系统不记录它包含的文件数量。它包含的内容是:

  • 一个引导扇区
  • 一个文件系统信息扇区(在 FAT32 上)包括:
    • 已知空闲簇的最后数量
    • 最近分配的集群数
  • 分配两份文件table
  • 根目录区域(在 FAT12 和 FAT16 上)
  • 数据集群

您需要遍历目录树以获取计数。