找回密码
 注册
首页 ≡≡桌面技术≡≡ PC操作系统 关于8.3格式短文件名规范、DOS时代的8.3格式文件名规范 ...

windows 关于8.3格式短文件名规范、DOS时代的8.3格式文件名规范

灰儿 2023-2-24 09:09:09
关于8.3格式短文件名规范、DOS时代的8.3格式文件名规范

所谓8.3格式短文件名规范,就是型如 PROGRA~1(目录)或者元素周~1.exe(文件)这样的名称——
“8”是指文件名或目录名的主体部分小于等于8个字节;
“3”是指文件名的扩展名部分小于等于3个字节。

另外还有一点,就是8.3文件名的有效字符不包括空格等特殊字符。

8.3短文件名格式规范是DOS+FAT12/FAT16时代遗留下的老规矩,自从Windows95开始(其实据说从Windows for Groups 3.11开始),Windows就已经能支持长文件名,但是为了向前兼容,特别是文件系统兼容性,FAT文件系统均强制执行“为长文件名提供8.3兼容格式的短文件名”的特性。

因此你会看到,在FAT16/32文件系统上:目录"program files"同时还拥有一个8.3规范的"PROGRA~1"短名称;而文件"元素周期表.exe"也同时拥有一个"元素周~1.exe"的短名称。

DOS短文件名规范:
(1)、取长文件名的前 6 个字符加上”~1”形成短文件名,扩展名不变。
(2)、如果已存在这个文件名,则符号”~”后的数字递增,直到 5。
(3)、如果文件名中”~”后面的数字达到 5,则短文件名只使用长文件名的前两个字母。通过数学操纵长文件名的剩余字母生成短文件名的后四个字母,然后加后缀”~1”直到最后(如果有必要,或是其他数字以避免重复的文件名)。
(4)、如果存在老 OS 或程序无法读取的字符,换以”_”

NTFS文件系统与8.3格式规范的兼容性

NTFS文件系统支持unicode(UTF16)字符集文件名,最长达255个UTF16字符,因此NTFS文件系统以及基于unicode字符集的32位NT内核Windows操作系统本身都没有必要遵循16位DOS时代遗留的8.3格式短文件名规范。

但还是为了兼容性,NTFS文件系统也提供了一个可选的特性:8.3兼容格式。Windows中这个特性默认是on,也就是说每当建立一个长文件名的对象的同时,系统的NTFS驱动模块会自动建立一个合适的8.3格式短名称指向这个对象。

需要指出的是,这个特性并不像FAT文件系统中那样是强制执行的,因此不同的磁盘实用程序或者操作系统可能有不同的执行方式——

比如windowsXP中可以用 fsutil behavior set disable8dot3 1 命令关闭,驱动模块关闭这一特性后就不会每次都额外地建立一个附加的短名称,这样在新建/重命名大量小文件/目录的时候能略微提升磁盘的写入速度,(不用计算出一个合适的短文件名,也不用把这个额外的信息写入磁盘)。

如何查看磁盘文件短文件名
以C盘为例,DOS命令行输入”dir/x”,结果如下图(最右列是长文件名,左侧是对应的短文件名):
但是我在DOS内查看我的D盘时发现无法显示对应的短文件名,如下图:
后来发现是因为我的D盘关闭了8.3兼容特性,也就是新建一个长文件名文件,并不会自动创建对应的短文件名,所以”dir/x”命令无法显示出短文件名。

DOS窗口下与8.3兼容名称相关的一些命令
fsutil behavior query disable8dot3    检查NTFS驱动是否开启8.3兼容特性
fsutil behavior set disable8dot3 1    关闭8.3兼容特性
fsutil behavior set disable8dot3 0    开启8.3兼容特性
fsutil file setshortname <longname> <8.3name>  手工指定一个8.3短名称
dir /x   列出当前目录的子目录和文件,以及相应的8.3兼容名称(如果有的话)

Windows 关闭、开启短文件名功能:
命令行输入“regedit”打开注册表,找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

将 NtfsDisable8dot3NameCreation 的值设为 0,也就是创建短文件名,如果值设为 1,就是不创建短文件名,具体含义如下:
8.3.png

0: NTFS创建短文件名。此设置启用无法处理长文件名的应用程序和使用不同代码页查找文件的计算机。
1: NTFS不创建短文件名。尽管此设置提高了文件性能,但无法处理长文件名的应用程序和使用不同代码页的计算机可能无法找到文件。

注:开启8.3兼容特性后,发现新建的文件夹存在短文件名,之前的文件仍没有短文件名。



您需要登录后才可以回帖 登录 | 注册
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。