¿Exportar desde la aplicación Mac Photos manteniendo la fecha de creación de los datos?

5

Tengo algunas fotos tomadas en 2012 y cuando las exporto como originales a una carpeta tienen una fecha de creación de julio de 2016. Ejecutar un detallista EXIF mostró que las imágenes se tomaron en 2012, entonces ¿por qué las fotos las exportan y añadir otra fecha a ella?

Intenté exportar todo mi álbum de 2009-2016 y noté que algunas fotos tomadas en años anteriores a 2016 también aparecen en julio u otros meses de este año.

Realmente apreciaría si alguien pudiera arrojar algo de luz sobre este tema.

    
pregunta Render 11.10.2016 - 18:29

3 respuestas

6

Tenga en cuenta que, para que sus archivos tengan una fecha de creación que coincida con la fecha de "foto tomada" de EXIF, debe usar Exportar originales no modificados. Es posible que las imágenes modificadas se hayan editado dentro de las fotos, lo que hace que se cree un nuevo archivo, y el uso de la exportación normal exportará ese archivo modificado con la fecha de creación posterior.

Hay algunas opciones en esta publicación en Photography SE para cambiar la fecha de creación de un archivo para que coincida con los datos EXIF. ¡Nunca debe intentar usarlos en archivos dentro del paquete .photoslibrary ! Exporta tus archivos primero.

ExifTool es una aplicación de línea de comandos muy poderosa para leer y escribir datos EXIF en un Variedad de archivos, incluyendo videos. Sin embargo, en Mac, no puede escribir la fecha de creación del archivo. Hay una forma de evitar eso usando un poco de scripts de bash.

Aquí hay un comando que funcionará tanto para archivos de fotos como de video:

for file in *; do SetFile -d "$(exiftool -p '$CreateDate' -d '%m/%d/%Y %H:%M:%S' "$file")" "$file"; done

Esencialmente, un bucle se ejecuta sobre archivos en el directorio actual. exiftool se usa para leer la etiqueta de fecha de creación EXIF y SetFile se usa para escribir como la fecha de creación del archivo. La forma en que está escrito afectará a todos los archivos en el directorio actual, por lo que le sugiero que mueva todos los archivos que desee modificar a un directorio que no contenga nada más, y ejecute el comando desde ese directorio .

    
respondido por el tubedogg 13.10.2016 - 19:37
1

en caso de que quieras usar el touch en lugar de SetFile:

for file in *; do touch -mt "$(exiftool -p '$CreateDate' -d '%Y%m%d%H%M.%S' "$file")" "$file"; done
    
respondido por el user 15.03.2018 - 23:08
1

La respuesta aceptada asume que uno sabe cómo usar la línea de comando. Si no lo hace, aquí están los pasos precursores supuestos:

1) Instale un administrador de paquetes, si aún no tiene uno instalado. (Y luego úselo para siempre para instalar nuevo software :))

(Recomendado :)

Para Mac: use Homebrew - enlace

Para Windows: use Chocolatey - enlace

2) Utilizando su (^^ recién instalado) administrador de paquetes, instale exiftool , que es un software gratuito para ver / trabajar con metadatos de medios:

En Mac:

brew install exiftool

En Windows:

choco install exiftool

3) Navegue al directorio que contiene sus archivos de imagen / película usando el comando 'cambiar directorio': cd - (Lea más sobre cómo usar la línea de comando aquí: enlace )

cd {insert-name-of-your-file-directory-here}

4) El último comando se basa en la (s) respuesta (s) aceptada (s) anterior (es), pero encontré que necesitaba cambiar esto a CreationDate para que realmente refleje la fecha de captura de las fotos / videos originales. Y también opté por usar touch :

Versión de una sola línea (copiar y pegar esto):

for file in *; do touch -t "$(exiftool -p '$CreationDate' -d '%Y%m%d%H%M' "$file")" "$file"; done

(El mismo código, pero formateado para facilitar la lectura en caso de que quiera comprender lo que está sucediendo):

for file in *; do   \
    touch -t "$(exiftool -p '$CreationDate' -d '%Y%m%d%H%M' "$file")" "$file";   \
done
    
respondido por el Daniel Schofield 25.09.2018 - 11:32

Lea otras preguntas en las etiquetas