令人困惑的 Unicode 现象

令人困惑的 Unicode 现象

我的家庭网络出现了一个令人恼火的现象。
我的 NAS 是 Synology,3 个工作站基于 Apple,1 个工作站基于 Windows 10。
最近,我在使用 Apple Finder 复制文件时遇到了问题,当它偶然发现下面的目录时,它就崩溃了。

安东宁·德沃夏克--第 8 和第 9 号交响曲-《来自新世界》-(库贝利克)/

当我看着它ls -li从命令行,我看到两个目录显然名称相同,但 inode 不同。

441472264 drwxr-xr-x 2 admin users 4096 Mar  2 15:38 Antonín_Dvorák--Symphonien_No._8+No._9-»Aus_der_Neuen_Welt«-(Kubelik)/
441472320 drwxr-xr-x 2 admin users 4096 Mar  2 15:38 Antonín_Dvorák--Symphonien_No._8+No._9-»Aus_der_Neuen_Welt«-(Kubelik)/

Windows 文件资源管理器显示的名称确实略有不同。
在 Linux 上,它们显示完全相同。
我尝试过的一些实用程序在目录方面没有问题,但其他实用程序有问题。
使用以下工具查看十六进制转储ls | od -xc,我发现这个名字安东宁·德沃夏克有两种不同的 Unicode 表示形式以及A

0000000    6e41    6f74    696e    81cc    5f6e    7644    726f    cc61
          A   n   t   o   n   i 314 201   n   _   D   v   o   r   a 314
0000020    6b81    2d2d    7953    706d    6f68    696e    6e65    4e5f
        201   k   -   -   S   y   m   p   h   o   n   i   e   n   _   N

0000000    6e41    6f74    c36e    6ead    445f    6f76    c372    6ba1
          A   n   t   o   n 303 255   n   _   D   v   o   r 303 241   k

我不知道这是怎么发生的,但我怀疑是复制或备份造成了混乱,因为当我深入挖掘时,我发现我的古典音乐收藏中还有不少类似的作品。
有人见过类似的问题吗?能不能解释一下?

答案1

有谁见过类似的问题吗...

是的

相似之处在于两个不同的文件名在视觉上看起来相同。

相似度不够,无法帮助您了解具体情况的确切原因。

并且可以对此提供更多的启示吗?

我想你可能已经正确地描述了它。

有 ”范式“Unicode 的这一版本旨在减少此类问题。

在不同系统之间传输数据的软件可能会转换为规范化形式,以试图防止这种情况发生。就像文件传输协议 (FTP) 会更改文本文件中特定于平台的行尾一样 - 这可能会导致问题。我猜在某些情况下,任何形式的更改(包括规范化)实际上都可能使问题变得更糟。


有关的:

SYNOPSIS
       convmv [options] FILE(S) ... DIRECTORY(S)

OPTIONS


...

       --nfc
           target files will be normalization form C for UTF-8 (Linux etc.)

       --nfd
           target files will be normalization form D for UTF-8 (OS X etc.).

相关内容