win 上哪种文件系统是区分大小写的?

2022-01-12 16:47:52 +08:00
 James369

win 上对开发真是不够友好,这年头 NTFS 还是不区分大小写,解压一个包都报重名错误(大小写不一样)。 蛋疼,至少 mac 在新建文件系统时,也可以选择是否区分大小写。 怎么处理呢,各位大神。

5420 次点击
所在节点    程序员
42 条回复
lxml
2022-01-12 23:22:31 +08:00
@mineralsalt #19 我倒是没啥刚需,主要是就是强迫症,另外就是 NAS 上偶尔有一些 docker 里面有大小写相关的问题
lxml
2022-01-12 23:23:18 +08:00
另外,mac 以后改成区分大小写也不奇怪,因为 iOS 是区分的,macOS 不区分我感觉是当时的一个设计失误吧,而且以 mac 拨乱反正的能力,cpu 都换几次了,换个大小写敏感不是什么难题
secondwtq
2022-01-13 03:19:13 +08:00
Steam 在 Linux 上好好的,不知道为啥 ...
目前在 Linux 上区分大小写碰到的唯一兼容问题就是 Civ6 的 mod 不好装,需要改下配置文件。
AX5N
2022-01-13 04:30:11 +08:00
理论上大小写不敏感的系统更安全,大小写敏感的文件碰到了大小写不敏感的系统有可能会出问题,但大小写不敏感的文件碰到大小写的敏感的系统一定不会出问题。
xuanbg
2022-01-13 09:20:24 +08:00
最早的 unix 是区分大小写的,但你看后来 linux 就不区分,基于 freebsd 的 macOS 也算是正宗 unix 了,但它也不区分大小写。这说明啥,说明区分大小写坑人啊。
james122333
2022-01-13 09:50:37 +08:00
区分大小写才好阿 命名规范
想要不敏感改下 mount 参数以及 /etc/fstab 就可以
Huelse
2022-01-13 11:13:58 +08:00
从系统开发的角度,不区分大小写可以简化问题
james122333
2022-01-13 11:45:02 +08:00
@Huelse

是简化了 但又产生了新的问题 看代码总是耗眼力
learningman
2022-01-13 11:58:38 +08:00
@AX5N #24 一个文件夹里有 A 和 a 两个文件,炸
dcsuibian
2022-01-13 13:35:28 +08:00
个人来说,喜欢 Linux 区分大小写的设计,但考虑收益,在重装 macos 时我选了 case-insensitive 的。
1 、大小写不敏感的设计并没有给我带来太多负面影响,因为绝大多数情况下,我都不会建两个只有大小写有差别的文件(如果不是有人提,我可能一辈子不会注意到 windows 和 macos 是大小写不敏感的,毕竟大小写不敏感不等于没有大小写)
2 、如其它人说的,macos 上 steam 等软件可能会在 Case-sensitive 的环境中出现问题,这是一个明显的减分项
3 、考虑到 macos 和 windows 默认都是大小写不敏感的,那么也就意味着其它人的电脑最有可能是大小写不敏感的,那即使我在用 Linux ,也会尽量避免分享给别人 a 和 A 这样的两个文件
4 、建立 Git 仓库时、npm init 时、设计 api 时,写 maven 的 groupId 时,一般建议使用中划线命名法,所以我大概也已经习惯了
总体来说,我个人感觉,大小写不敏感的设置不会对开发造成明显影响。调整一下你自己的命名方法可能相对来说更好、更方便,收益更佳
james122333
2022-01-13 16:07:19 +08:00
@dcsuibian
习惯好怎么写都不差
但依照一堆过往看过的命名就只能说区分还是比较好
chtcrack
2022-01-13 16:39:54 +08:00
@learningman 为何要有 A 和 a 两个文件夹,直接就一个 A 或 a 文件夹就可以了,多此一举,浪费资源!
learningman
2022-01-13 16:52:32 +08:00
@chtcrack #32 别问我,反正有人这么做了,你如果你用了他写的代码就会炸,你自己选择
chtcrack
2022-01-13 17:09:23 +08:00
@learningman 我的选择,不用他的代码,自己写..
learningman
2022-01-13 17:12:39 +08:00
@chtcrack #34 你总要用第三方库,你总要 import ,你总会有依赖,指不定哪里就炸了
learningman
2022-01-13 17:13:18 +08:00
@chtcrack #34 比如 WSL1 的时候,很多东西在上面编译不出来,就因为大小写不敏感
duke807
2022-01-13 21:40:18 +08:00
linux 才是最權威的,本就應該區分大小寫
2i2Re2PLMaDnghL
2022-01-14 15:48:37 +08:00
@AX5N
大小写敏感的文件碰到了「大小写不敏感的系统」有可能会出问题,为什么会推论出「大小写不敏感的系统」更安全?
2i2Re2PLMaDnghL
2022-01-14 15:49:45 +08:00
@duke807 我觉得 Oberon 和 Multisys 才是权威的,但我不知道它们是否区分大小写……
AX5N
2022-01-14 16:41:13 +08:00
@2i2Re2PLMaDnghL 操作系统还会包含各种子系统(你的程序),如果你的程序在你的操作系统运行出现问题,不就说明你的操作系统容易诞生问题(不安全)吗。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/827856

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX