mdfind query en kMDItemFSTypeCode no puede encontrar algunos códigos de tipo

2

Acabo de actualizar a una nueva MacBook con Lion, y al descubrir que algunas de mis aplicaciones antiguas no pueden venir, estoy rastreando mis archivos en busca de ciertos tipos que deberán convertirse a formatos a prueba de futuro. Muchos de estos archivos se remontan al Sistema 7 y algunos nunca tuvieron extensiones de nombre de archivo (d'oh), así que pensé que la mejor manera de encontrarlos sería buscar por los códigos de tipo / creador de estilo antiguo.

He estado usando el comando mdfind con éxito para la mayoría de los códigos de tipo, pero he descubierto que sus resultados no siempre son consistentes. Aquí hay un ejemplo de lo que está mal cuando intento encontrar archivos 3DMF.

Primero ejecuto mdls para verificar el código de tipo:

$ mdls garage.3DMF

kMDItemContentCreationDate     = 2002-06-24 02:05:20 +0000
...
kMDItemFSCreatorCode           = "OP40"
...
kMDItemFSTypeCode              = "3DMF"
kMDItemKind                    = "3dmf"
...

"Ah, entonces es '3DMF'," creo. Así que ahora ejecuto mdfind en el mismo directorio para verificar que funciona:

mdfind -onlyin . "kMDItemFSTypeCode == '3DMF'"

¡Pero no se devuelve nada! De hecho, nada vuelve cuando lo ejecuto en todo el disco, a pesar de que tengo archivos 3DMF repartidos por todas partes.

La ejecución de una consulta general (mdfind 3DMF) parece hacer el trabajo, pero es una exageración y devuelve muchos falsos positivos. ¿Hay algo obvio que estoy haciendo mal aquí?

    
pregunta smashuu 03.09.2012 - 18:51

1 respuesta

1

Tienes que traducir el código de tipo cadena en un código de tipo real (un número).

Para su '3DMF' , ese número es 860114246. Por lo tanto, esto funcionará:

mdfind kMDItemFSTypeCode == 860114246
    
respondido por el matt 26.04.2017 - 19:23

Lea otras preguntas en las etiquetas