为什么两个不同大写的文件夹之间没有区别?


1

我有一个名为“foo”的空目录。我尝试创建一个名为“Foo”的新目录。但我不能创造它:

***@###:~/test$ mkdir foo
***@###:~/test$ ls
foo
***@###:~/test$ mkdir Foo
mkdir: Foo: File exists
***@###:~/test$ ls
foo

对于文件也可以看到相同的行为。

在Linux上,2个大小写不同的文件/文件夹可以共存于同一目录中。

为什么MacOS选择不允许文件和目录区分大小写?


2
macOS确实允许区分大小写的文件系统,但我猜你没有将你的磁盘格式化为区分大小写。您可以在“磁盘工具”中验证这一点
unknowndomain

@unknowndomain你是对的!它在磁盘工具信息库中写成“区分大小写:否”。是否有充分的理由将磁盘格式化为不区分大小写?
vinzee

@vinzee它是默认Apple方式(也是Windows)的原因,并且有几个程序无法在区分大小写的文件系统上运行
Mark

Answers:


3

历史。向后兼容性。客户偏好。

历史Apple和其他文件系统并不总是区分大小写。HFS +和现在的APFS具有这样的能力。也就是说,它们可以区分大小写或不区分大小写,具体取决于它的格式。

如果您使用macOS来操作不区分大小写的文件系统上的文件和文件夹,则macOS将阻止创建同名文件,即使它们的显示名称可以包含这两种情况。

通过插入在不同文件系统(FAT,ext3等)中格式化的闪存驱动器进行实验,以轻松测试此行为。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.