¿Cómo puedo ver los bytes de un nombre de archivo tal y como se almacena en un volumen APFS (es decir, sin pasar por la normalización Unicode)?
Contexto: He migrado una antigua biblioteca de iTunes a una nueva biblioteca de Music.app, y he ejecutado la operación "Consolidar archivos" en el resultado para ordenar las cosas. A continuación, he utilizado rsync
y diff
para comparar los dos en el disco y obtuve resultados como
% diff -rq iTunes/iTunes\ Music Music/Media.localized/Music
...
Only in Music/Media.localized/Music: Múm
Only in iTunes/iTunes Music: Múm
Esto me llevó por el camino de aprender sobre Normalización Unicode (explicadores aquí y aquí ). Estas dos cadenas tienen la misma representación visual pero se almacenan de forma diferente en el disco. Esto ocurre con frecuencia con los caracteres acentuados.
La pregunta que surgió fue: ¿Cómo puedo obtener rápidamente la representación en bytes de cada nombre en el disco, de modo que pueda estar seguro de que entiendo lo que está pasando?
Por cierto, para el problema original de comparar directorios, encontré esto práctico Python script (vía esta respuesta ) que considerará los nombres equivalentes a Unicode como coincidentes.