V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
soli
V2EX  ›  macOS

Mac OS X 的文件名竟然不是 case sensitive 的。。。

  •  
  •   soli · 2013-12-13 00:07:02 +08:00 · 6737 次点击
    这是一个创建于 4002 天前的主题,其中的信息可能已经有所发展或是发生改变。
    13 条回复    2017-03-20 10:39:34 +08:00
    dorentus
        1
    dorentus  
       2013-12-13 00:28:14 +08:00   ❤️ 1
    文件系统的事情。基本上算是历史遗留问题。

    其实你可以把分区格式化成 case-sensitive HFS+,不过有些程序会有问题(比如暴雪的几个游戏),有些程序会没法启动(比如某些版本的 Photoshop)。
    sdysj
        2
    sdysj  
       2013-12-13 00:33:22 +08:00
    LZ火星归来,安好?
    soli
        3
    soli  
    OP
       2013-12-13 00:36:24 +08:00
    一直以为 Unix 系的都是大小写敏感的。。。
    ivanlw
        4
    ivanlw  
       2013-12-13 00:38:26 +08:00 via iPhone
    @soli 服务器版的才都是大小写敏感的…当年折腾了这个好久…
    aku
        5
    aku  
       2013-12-13 00:53:51 +08:00 via Android
    @ivanlw 好分裂
    aku
        6
    aku  
       2013-12-13 00:56:27 +08:00 via Android
    @ivanlw 在windows和Linux之间切换就感觉很分裂了
    Apple为何自家的系统也要这样
    那个通过Unix认证的是哪个版本?
    c742435
        7
    c742435  
       2013-12-13 10:58:31 +08:00
    格式化磁盘的时候就会让你选是不是要格式化成大小写敏感的文件系统。
    aliuwr
        8
    aliuwr  
       2013-12-13 13:37:16 +08:00
    一直以为 Unix 系的都是大小写敏感的。。。然后开发的时候被这个坑过了,
    too
        9
    too  
       2013-12-13 14:26:26 +08:00
    擦,还有这样的坑,怎么没见果粉提到过呢
    tangmian
        10
    tangmian  
       2013-12-13 23:44:43 +08:00
    这个确实坑爹
    dorentus
        11
    dorentus  
       2013-12-14 01:40:35 +08:00   ❤️ 1
    @too

    0) 一般用户不会遇到问题。

    1) *NIX 开发者,如果一直很注意区分大小写的话,也根本不会遇到问题。

    2) iOS 开发时遇到的问题多半是这样:

    a) 应用打包了一个名为 aaa.txt 的文件
    b) 代码里面使用 AaA.TXT 的文件名去访问它
    c) 在模拟器里面运行的时候,因为模拟器跑在 OS X 上,而 OS X 预装的时候文件系统是 case preserving 的,因为用 AaA.TXT 可以成功访问到 aaa.txt 文件,一切正常
    d) 到真机上的时候,因为真机的文件系统没有历史遗留下来的压力,是 case sensitive 的,那么文件找不到,就出问题了

    但是开发者你为什么要这么做……

    3) 剩下会被坑的就是像我这种自己去折腾的,而去折腾的时候,已经是可以预想到会出问题了……
    too
        12
    too  
       2013-12-14 10:04:17 +08:00
    @dorentus 按你说的,难道 iOS 上倒是 case sensitive 的? 这个...
    也没啥,这种问题一般也不会遇到,可以,遇到了就能让你郁闷上半天。
    haozi3156666
        13
    haozi3156666  
       2017-03-20 10:39:34 +08:00
    被坑了, git 拉下来的文件中有同名大小写的文件,执行 git status 发现有改动,惊到了, git add, git checkout 都木有任何卵用,怀疑是钩子的原因,后发现不是,然后开始怀疑人生了,知道 rm 掉这个文件,再次 git status ,发现删除了两个同名的文件,这才反应过来,可能是大小写问题, google 大哥告诉我原来是 mac 大小写不敏感,也是醉了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4945 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 01:10 · PVG 09:10 · LAX 17:10 · JFK 20:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.