文件名称

编辑
本词条由“匿名用户” 建档。

文件名标识磁盘上或数据传输中的文件系统中的文件。文件通常由目录名额外表征,从而产生完整的路径名。只有这种组合形成的完整路径名通常是唯一的。每个目录(文件夹)的两个文件的相同命名是不可能的-在这种情况下,文件名可以由系统规范化,因此大小写的变化没有区别(不区分大小写)。可选的文件名,扩展是文件名的一部分。 根据操作系统或文件系统的不同,一个文件名可以由几个部分组成。各个部分由通常不属于指定名称的特定...

文件名称

编辑

文件名标识磁盘上或数据传输中的文件系统中的文件。文件通常由目录名额外表征,从而产生完整的路径名。只有这种组合形成的完整路径名通常是唯 一的。每个目录(文件夹)的两个文件的相同命名是不可能的 - 在这种情况下,文件名可以由系统规范化,因此大小写的变化没有区别(不区分大小写)。可选的文件名,扩展是文件名的一部分。

属性

编辑

根据操作系统或文件系统的不同,一个文件名可以由几个部分组成。各个部分由通常不属于指定名称的特定字符分隔。这样的字符是一个句点,. ,后面跟着一个文件名后缀,表示一个文件的类型;文件名扩展列表提供了一个概览。

某些操作系统使文件的处理完全依赖于相应的文件名 ns 扩展名。其他操作系统根据内容识别文件类型——例如,根据所谓的幻数,它可用于相对可靠地确定特定文件类型,或通过存储在与文件关联的替代数据流中的数据,例如关于文件类型和创建它的程序。但即使在不从文件名扩展名派生文件类型的系统上,文件名也随它一起提供——例如,因为它简化了数据交换

文件名的最 大长度受操作系统和磁盘文件系统的限制。例如,使用 Joliet 文件系统的 CD-ROM 最多可以使用 64 个字符。操作系统中路径名的最 大长度也可能导致间接限制。

文件名是否区分大小写字母同样取决于所使用的操作系统和各自的文件系统。特别是历史文件系统通常不设计为区分大小写,即它们存储文件名 n .一般用大写字母。然而,大多数当前的文件系统总是保留大小写,即它们在创建或重命名文件时使用大写和小写字母 - 使用的操作系统或相应的编程接口然后可以设计为既不区分大小写又区分大小写。

文件系统

编辑

在英语中,大小写之间的明确区分称为“case-sensitivity”,如果不区分大小写,则称为“case-insensitivity”。操作系统中的文件系统实现要么区分大小写(区分大小写) 或不区分大小写(不区分大小写字母)。

每个文件可以取两个 6 字符的名称,每个用户都有自己的目录:DEV;DIR:PRTONE PRTTWO 最初只有 14 个字符,1983 年随着伯克利快速文件系统 (4.2BSD) 增加到 255 个字符。

使用 UTF-8 编码和非 ASCII 字符时,可用 255 个字节,但少于 255 个字符。编码不规范; UTF-8 通常用作默认值。

当使用长 Unicode 路径时,只有 255 个字符是可能的 APFS 是 HFS++ 的继任者,并针对闪存和 SSD 进行了优化,但它也适用于硬盘驱动器和其他数据存储设备。

实施

编辑

文件系统具有特定的内部结构,其中大部分与文件系统设计所针对的参考系统的结构相对应。如果操作系统也不知道,文件系统通常没有权限管理。

这方面的一个例子是 PC DOS 或 MS-DOS 的 FAT 文件系统:由于 DOS 本身不是多用户系统,它也不存储文件和目录的访问权限。这同样适用于以通常方式存储为本地时间或世界时间,或大小写约定的文件的创建和访问时间。

区分大小写

大小写字母之间的区别称为“区分大小写”。使用文件名n 时,系统处理文件名n 是区分大小写(严格区分)还是不区分大小写或不区分大小写(不区分大小写)会有很大的不同。

在区分大小写的系统上,文件名(以大写字母开头)与文件名(全部小写)或 FILENAME(全部大写)指的不是同一个文件杆)。对于这样一个系统上的用户来说,必须坚持目录列表中的拼写,因为只有名称为文件名的文件确实存在,才能打开和处理它。

另一方面,如果只有一个小写的同名文件 filename,系统会正确地发出一个错误,即名称为文件名的文件不存在。

对于计算机系统,不区分大小写意味着它必须做额外的工作,因为它必须在每次请求时将文件名n转换为所有可能的大小写,直到找到该名称的文件。这样的系统只能在它尝试了所有的可能性之后发出一个错误消息,指出文件不存在。

一个系统原则上是否使用case-insensitive 文件名n 也会对所使用的文件系统(为操作系统开发和与操作系统一起开发)产生影响,因为如果操作系统和它的API 没有根本区别,它就没有来拯救他们。

相反,对于区分大小写的系统,绝 对有必要在文件系统中保留准确的拼写。但是,当前的文件系统至少设计为保留大小写并接收拼写 - 因此在大多数情况下,可以使用具有通常的文件名 ns 约定的非系统文件系统而不会出现任何问题。

文件名称

互操作性

FAT 文件系统(FAT12、FAT16 和 FAT32 的变体)在几乎所有操作系统上都实现。然而,因为文件系统对底层系统做了某些假设——并且只以大写字母存储文件名n,这些是例如,在类 Unix 操作系统上,文件系统驱动程序默认将它们转换为小写。

对于 VFAT 扩展,仅当文件名符合 8.3 约定且在 FAT 中为大写时,才会执行此转换。FAT 的其他扩展,如 UMSDOS,如果文件未保存在 Unix 上并以 UMSDOS 格式保存,则独立实现此类转换。但是,由于Unix/Linux区分大小写字母,文件只能识别转换后的大小写或存储在VFAT中的大小写。

因此,重要的不仅仅是文件系统,还有操作系统以及它如何处理存储在文件系统中的信息(文件名、权限、日期)。例如,文件系统驱动程序解决了文件系统的特殊性,但操作系统环境阻止了这一点。一个例子是 Unix shell 如何处理通配符。

在 Linux 下,不区分大小写内置于 AFFS 的文件系统驱动程序中,但不在 shell 中。例如,如果文件名文件名(有时大写)存储在 Amiga“快速文件系统”上,则可以在 Unix shell 中使用 rm 文件名(全部小写)将其删除,因为文件系统驱动程序执行转换。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/358173/

(9)
词条目录
  1. 文件名称
  2. 属性
  3. 文件系统
  4. 实施
  5. 区分大小写
  6. 互操作性

轻触这里

关闭目录

目录