¿Cómo obtener información extensa del sistema de archivos sobre un archivo?
Tengo un archivo que constantemente causa errores en mi utilidad de copia de seguridad (Unison). Estoy tratando de reducir un error y descubrir en qué se diferencia de otros archivos. Copié ese archivo y una copia de seguridad está bien, por lo que el error no está relacionado con el contenido del archivo. Luego cambié el nombre de original para asegurarme de que un error no esté relacionado con un nombre de archivo.
Así que ahora tengo 2 archivos con exactamente el mismo contenido, los mismos xattrs (lo verifiqué), pero uno de ellos hace que la copia de seguridad falle. ¿Qué más podría ser diferente entre esos archivos?
Además no es un caso único. Tengo muchos archivos con problemas similares, todos creados por el mismo programa (DaVinci Resolve)
actualización: descubrí que, si bien los archivos muestran exactamente el mismo tamaño en ls -l
el archivo del problema, tienen un tamaño más grande en el cuadro de diálogo 'Obtener información' del Finder. Entonces, hay un rey de metadatos adjuntos a ese archivo. ¿Cómo verlo?
actualización 2: Traté de usar mdls
y ls -l@
según lo recomendado, pero no obtuve una respuesta. Simplemente muestra que los tamaños de los archivos son diferentes, pero no muestra por qué. Aquí hay información adicional:
Romans-MacBook-Pro:cut poma$ mdls src.mov
kMDItemFSContentChangeDate = 2015-01-19 06:12:45 +0000
kMDItemFSCreationDate = 2015-01-05 04:54:25 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "src.mov"
kMDItemFSNodeCount = 290301124
kMDItemFSOwnerGroupID = 99
kMDItemFSOwnerUserID = 99
kMDItemFSSize = 290301124
kMDItemFSTypeCode = ""
Romans-MacBook-Pro:cut poma$ mdls copy.mov
kMDItemFSContentChangeDate = 2015-01-19 06:56:04 +0000
kMDItemFSCreationDate = 2015-01-19 06:56:04 +0000
kMDItemFSCreatorCode = ""
kMDItemFSFinderFlags = 0
kMDItemFSHasCustomIcon = 0
kMDItemFSInvisible = 0
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery = 0
kMDItemFSLabel = 0
kMDItemFSName = "copy.mov"
kMDItemFSNodeCount = 290300838
kMDItemFSOwnerGroupID = 99
kMDItemFSOwnerUserID = 99
kMDItemFSSize = 290300838
kMDItemFSTypeCode = ""
.
Romans-MacBook-Pro:cut poma$ ls -la@
total 10681888
...
-rw-r--r--@ 1 poma staff 290300838 Jan 19 13:56 copy.mov
com.apple.quarantine 22
Mac_Metadata 20
-rw-rw-rw-@ 1 poma staff 290300838 Jan 19 13:12 src.mov
com.apple.quarantine 22
Mac_Metadata 20
.
Romans-MacBook-Pro:cut poma$ md5 src.mov
MD5 (src.mov) = 7d59d01e5efffe3a258eff86d8b775a0
Romans-MacBook-Pro:cut poma$ md5 copy.mov
MD5 (copy.mov) = 7d59d01e5efffe3a258eff86d8b775a0
Como podéis ver src.mov
tiene diferente tamaño en ls
y mdls
mientras que para copy.mov
ellos son iguales.
Puede enumerar todos los metadatos adjuntos a un archivo con el mdls
comando
Consulte esta respuesta para obtener una muestra https://apple.stackexchange.com/a/165098/19086
ls -l@
mostrará qué atributos extendidos se adjuntan a un archivo
ls -l@
como com.apple.ResourceFork
atributo. No hay tal atributo en mi archivo. El archivo fue creado por el programa DaVinci Resolve. Todos los archivos creados por este programa son así.xattr -p com.apple.quarantine
y xattr -p Mac_Metadata
el src y copie, ¿cuál es la diferencia?
- Abre la Terminal.
- Escriba
mdls
seguido de un solo espacio.- Arrastre el archivo deseado desde el Finder a la ventana de Terminal, o de lo contrario apunte al archivo usando la sintaxis de ruta de archivo de Unix.
- Presione Entrar para ejecutar el comando en el archivo.
Creo que esto es lo que estás buscando.
markhunte
Poma
markhunte
markhunte
Poma
markhunte