答案1
这是两个轻微地不同的问题,但实际上它们都与电子邮件无关。
在通过电子邮件发送文件时,我注意到每个斜线都被替换了。我使用的是 Gmail,在附加名为 的文件时
1/2.pdf
,Gmail 显示1:2.pdf
这是 macOS (OS X) 的一个怪癖。
通常,斜线/
是路径分隔符在 OS X(和其他操作系统)中,因此无法在文件名中使用。如果您真的尝试创建一个名为 的文件1/2.pdf
,那么它实际上会被解释为“文件2.pdf
夹内的文件1
”。这也适用于 Linux、Windows、Android 以及几乎所有其他操作系统。
但最初的 MacOS(OS X 之前)使用斜线:
作为路径分隔符,而不是斜线——这曾是允许在名称中使用。这仍然会影响旧的 HFS+ 格式的磁盘(其中可能包含带斜杠的文件名)以及使用旧工具包构建的程序。
因此,Finder 仍然允许您使用/
名称,但在底层,:
当跨越到基于 Unix 的 macOS 核心时,它会被翻译成。(并翻译成再次如果/
它进入 HFS+ 磁盘...)
例如,使用ls
终端中的命令,您会看到您的文件实际上是/Users/Ryan/1:2.pdf
(而不是/Users/Ryan/1/2.pdf
)。并且不同的应用程序可能会将同一个文件视为1:2.pdf
或,1/2.pdf
具体取决于它们的编写方式。
相关文章:
- http://hints.macworld.com/article.php?story=20031114045400715
- https://stackoverflow.com/a/13298479
- https://apple.stackexchange.com/a/425171
这是 Windows 浏览器故意为之,因为两者都不 /
在 Windows 上,文件名中也:
不允许使用它们——它们都充当不同事物的分隔符。
在 Windows 中,斜线/
与通常的反斜线一起用作替代路径分隔符\
- 例如,路径C:\Users\Ryan
可以写为C:/Users/Ryan
或C:\Users/Ryan
。
同时,冒号:
既用作驱动器号指示符,又用作替代流分隔符(后者类似于 macOS 上的“xattrs”和“resource forks”)。
如果某个程序实际上尝试创建一个名为 的文件1:2.pdf
,Windows 会将其解释为“2.pdf
磁盘上的文件1:
”(是的,Windows 驱动器“字母”也可以是数字);而如果该程序使用Downloads/1:2.pdf
,则会将其解释为“目录Downloads
,文件名1
,备用流2.pdf
”。
因此,Windows 上的浏览器在下载文件时必须替换这两个字符(以及其他一些字符,如?
或*
或)。>
有关的: