filesystems - FAT 文件系统中奇怪的目录条目

标签 filesystems fat

所以我试图弄清楚 FAT FS 是如何工作的,并被根目录表弄糊涂了。我在分区中有两个文件:test.txt 和 innit.eh,结果如下表:

Root directory table

以 0xE5 开头的条目被删除,所以我认为这些是由于重命名而创建的。实际文件的条目如下所示:

TEST   TXT *snip*
INNIT  EH  *snip*

我不明白的是条目在哪里
At.e.s.t......t.x.t
Ai.n.n.i.t.....e.h.

来自哪里以及它们的用途是什么。它们不以 0xE5 开头,因此应视为现有文件。

顺便说一句,我正在使用 Debian Linux 创建文件系统和文件,但我注意到 FS 和 Windows 上创建的文件上的类似行为。

最佳答案

名称的 ASCII 部分(字母彼此靠近)是旧的 8.3 DOS 短名称。你看它只使用大写字母。在 DOS 中,只有这些会在那里。

较长的部分(中间有 0x00)是 Unicode 的长名称(在 Windows 中显示),每个字符使用 16 位。

关于filesystems - FAT 文件系统中奇怪的目录条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8151409/

相关文章:

macos - 从 CLI 提供程序的角度来看,可执行错误中的 CPU 类型错误

c - 如何计算 FAT 文件系统中的 FAT 大小

c - 如何检测FAT32数据区的目录结束?

c# - 允许用户删除我的应用程序正在使用的文件?

c++ - 从文件中读取而不是逐行

linux - 确定文件系统是否以只读方式挂载的最佳 POSIX 方法

linux - `chattr +i FILE` 和 `chmod -w FILE` 之间有什么区别?

linux - 移动文件而不覆盖

linux - 如何从 FAT 镜像恢复已删除的文件?

c++ - FAT 文件系统中的簇、页、扇区