Linux Darwin和Windows_NT中的禁止文件/目录名称

问题描述 投票:0回答:1

我正在尝试提出一个结论性的规则列表,列出了可以运行node.js的操作系统命名约定中的非法规则。

到目前为止,我没有在互联网上阅读许多资源和类似的问题,这是我发现的: 名称中任何地方的非法字符:

  1. windows_nt - /?<> \,:* |“
  2. Linux - /
  3. 达尔文 - /也许:? (有人说它在OS X上是允许的,但有些人说这不是,对我来说不是很清楚)

非法名称:

  1. windows_nt - CON,PRN,AUX,CLOCK $,NUL,COM1-9,LPT1-9(其他一些设备名称未包括在内,因为它们仅在旧的dos发行版上是非法的,并且node.js不适用于它们)
  2. Linux -
  3. 达尔文 -

非法尾随字符:

  1. windows_nt - 。 (点)和(空格)
  2. Linux -
  3. 达尔文 -

非法主角:

  1. windows_nt -
  2. Linux -
  3. 达尔文 -

最大文件/目录名称长度:

  1. windows_nt -
  2. Linux -
  3. 达尔文 -

最大路径长度:

  1. windows_nt -
  2. Linux -
  3. 达尔文 -

如果你能帮助我填补规则集的空白,我将很高兴。此外,只应考虑能够运行node.js的操作系统。

linux node.js darwin windows-nt
1个回答
0
投票

达尔文 - /也许:? (有人说它在OS X上是允许的,但有些人说这不是,对我来说不是很清楚)

:?在macOS中的文件名中有效。如果使用命令行或API函数,则可以使用任一字符创建文件名。

Finder(文件管理GUI)不允许您在文件名/目录名中使用:,但它允许您使用/。这是因为它实际上在文件名中使用:,但将该字符显示为/

$ ls -l
total 0
drwxr-xr-x  2 user  staff  64  6 Apr 21:40 abc:123

Finder window

非法名称:

在Linux和macOS上都会想到...

最大文件/目录名称长度:

在APFS上的macOS(默认文件系统)上,单个目录或文件名的最大长度似乎为255.但是完整路径可能比这长得多。

© www.soinside.com 2019 - 2024. All rights reserved.