• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiaoming1992
V2EX  ›  程序员

NodeJS 的 fs 包对文件的操作,有可能在 windows 下大小写严格吗?

  •  
  •   xiaoming1992 · Nov 13, 2019 · 2123 views
    This topic created in 2402 days ago, the information mentioned may be changed or developed.

    怪我开始没注意严格大小写,导致部分索引url 和文件实际url 大小写不一致,在windows下根本就没法找出所有不一致的文件来进行处理。。。
    当然不限定fs 包,任何能实现在windows下读写文件大小写严格的包都可以。

    10 replies    2019-11-13 17:53:26 +08:00
    momocraft
        1
    momocraft  
       Nov 13, 2019
    你期待的大小写严格的行为具体是怎样
    crackhopper
        2
    crackhopper  
       Nov 13, 2019
    我记得 windows 系统本身对 url 不区分大小写。只是显示的时候看起来有大小写区分。如果你有两个文件名字一样就大小写不一样,在 windows 下会认为是同一个。
    crackhopper
        3
    crackhopper  
       Nov 13, 2019
    我指的是文件系统 url。
    optional
        4
    optional  
       Nov 13, 2019
    没什么办法,包括 git 也有这个问题,,其实 mac 下默认也是不区分大小写啊。
    xiaoming1992
        5
    xiaoming1992  
    OP
       Nov 13, 2019
    @momocraft 就是在 windows 下,a.jpg 和 A.jpg 被认为是一个文件,并且无法通过代码判断这个文件到底是 a.jpg 还是 A.jpg ,我希望能区分二者。

    @crackhopper 就是说啊,windows 为什么不提供一个类似于严格模式这样的东西呢。。。

    @optional 也怪我自己一开始没有考虑到这个问题,如果在创建文件索引的时候就注意这个问题,就不会有这些麻烦事了。。。
    autoxbc
        6
    autoxbc  
       Nov 13, 2019   ❤️ 1
    操作文件前读一下父目录,列出的文件名是大小写敏感的,如果存在严格匹配的文件名,则继续操作,否则抛出错误
    dorothyREN
        7
    dorothyREN  
       Nov 13, 2019   ❤️ 2
    用文件名区分呗,a != A
    ysc3839
        8
    ysc3839  
       Nov 13, 2019 via Android
    WSL 好像支持。
    xiaoming1992
        10
    xiaoming1992  
    OP
       Nov 13, 2019 via Android
    @dorothyREN 是,我没想到,我总想着从文件名找文件,却没想过从文件读取文件名来和索引对比
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4474 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 48ms · UTC 04:07 · PVG 12:07 · LAX 21:07 · JFK 00:07
    ♥ Do have faith in what you're doing.