要为 Windows 准备 Mac 文件,请保留有意义的 Unicode 字母,但确保每个名称都符合 Windows 的保留字符、保留名称和末尾规则。然后检查外观重复的名称,并测试复制到实际目标位置。Unicode 对某些在视觉上完全相同的文本具有多种编码方式;访达中没有任何控件能保证选择特定的规范化形式,因此不要以为在访达中重命名就能使其标准化。
是什么让 Unicode 文件名具备可移植性?
Unicode 允许视觉上等同的文本具有不同的底层字符序列。例如,“é”可以编码为单个预先组合的字符,也可以编码为“e”后跟一个组合重音符。Unicode 将此类序列称为标准等价(canonically equivalent),并定义了 NFC 和 NFD 作为对其进行规范化的标准方法。像 NFKC 这样的兼容性形式可能会改变在某些上下文中具有重要意义的区别,因此不要不加区分地将其应用于名称。Unicode 标准附录 #15:Unicode 规范化形式
根据 Apple 的 APFS 文档,在 APFS 上,macOS 会在磁盘上保留文件名的规范化形式,同时在查找时将规范化变体视为等价。这种文件系统行为并不意味着访达具有面向用户的将名称转换为 NFC 的设置,也不能保证每个应用程序、传输方法或 Windows 目标端都会完全相同地处理每个名称。Apple 文件系统指南:常见问题解答
Windows 支持 Unicode 名称,但其命名规则禁止使用诸如 < > : " / \ | ? * 之类的字符以及控制字符。它还保留了一些设备名称,包括 CON、NUL 和 COM1;添加扩展名并不能使保留名称变得安全。还应避免以空格或句点结尾的名称。命名文件、路径和命名空间
在访达中准备文件
制作工作副本。 将计划传输的文件放入一个单独的文件夹中。这为您提供了一个审查和重命名文件的环境,而无需更改原始文件。如果名称与链接、脚本或应用程序的记录相关联,请在更改之前检查这些引用。
检查完整名称。 在“访达”中,选取访达 > 设置 > 高级,然后勾选显示所有文件扩展名。这有助于显示后缀,以便您可以保留它。Apple 警告说,更改扩展名可能会导致文件无法在其常用应用程序中打开。在 Mac 上显示或隐藏文件扩展名
简化与 Windows 不兼容的部分。 用连字符或下划线替换保留标点符号,删除任何末尾的空格或句点,并避免使用仅为 Windows 设备名称的名称,例如
CON.txt。保留有意义的 Unicode 字母——带重音的字符和非拉丁文字并没有被 Windows 明确禁止。为了与较旧或未知的工具实现最广泛的兼容性,在可以接受这种权衡的情况下,请使用纯字母和数字。
要重命名单个项目,请在访达中将其选中并按 Return 键。要批量重命名,请选择这些项目,按住 Control 键点按,选取重新命名,然后使用访达的替换文本、添加文本或格式选项。这些控件用于更改名称文本或添加编号;Apple 并未将它们记录为 Unicode 规范化控件。仔细检查生成的每个名称,尤其是扩展名以及可能导致重复的名称。在 Mac 上重新命名文件、文件夹和磁盘
谨慎处理规范化
如果接收方或工作流程明确要求 NFC,仅凭访达并没有提供可用于规范化文件名的现成命令或复选框。请使用明确支持 NFC 的受信任 Unicode 感知文件名实用工具,或者向接收系统的所有者询问其接受的格式。在应用转换之前,请保留工作副本并检查冲突:两个不同的源名称在规范化后可能会变成相同的名称。不要仅仅因为 NFKC 听起来更彻底就替换为它;Unicode 指出,兼容性等价可能会改变具有实际意义的区别。
如果没有特定的规范化要求,不要仅仅为了使带有重音符或非英语文件名“符合 Unicode 安全”而重命名它们。保留原始拼写,移除 Windows 无效的形式,并避免仅依靠视觉外观来区分两个名称。APFS 可能会在一个目录中将规范化变体视为等价,而另一个工具或目标位置的行为可能会有所不同;Unicode 规范化解释了等价性,但它并不承诺在所有文件系统和传输工具中都具有相同的行为。
检查实际传输
在移动大量文件之前,先将一小部分示例复制到目标 Windows 计算机、共享驱动器或可移动磁盘上。确认文件能够送达、打开并保留可区分的名称。在实际路径上进行测试非常重要,因为目标文件系统和传输软件可能会施加各自的限制;Microsoft 指出,文件名和路径限制因文件系统和路径格式而异。如果某个名称出错,请将其缩短或替换有问题的字符,然后重新进行复制检查。在接收方确认传输的文件集可用之前,请保留原始文件。
对于常规的文件交付,实用规则非常简单:保留可读的 Unicode,遵循 Windows 明确的命名限制,保留扩展名,并在真实目标端进行验证。仅当接收工作流程需要特定形式且您拥有明确说明支持该操作的工具时,才进行规范化。
来源
Unicode 标准附录 #15:Unicode 规范化形式 — Unicode 联盟
Apple 文件系统指南:常见问题解答 — Apple
命名文件、路径和命名空间 — Microsoft Learn
在 Mac 上显示或隐藏文件扩展名 — Apple 支持
在 Mac 上重新命名文件、文件夹和磁盘 — Apple 支持