Renomeia o diretório com base na data do arquivo no diretório

1

Estou procurando uma maneira inteligente de renomear os diretórios em massa na minha biblioteca de fotos com base na data em que as fotos foram tiradas.

Meu caso de uso específico: exporte a biblioteca de imagens do iPhoto ou do Aperture no OS X para uma estrutura de arquivos e pastas mais permanente e independente do sistema operacional.

A lista de entrada de diretórios ficaria assim:

1.2.2012
input_directory_name

A saída renomeada deve ficar assim:

2012-02-01 - 2012-02-22
2012-03-14 - 2012-03-14 input_directory_name

As datas devem ser escolhidas a partir das datas de criação das imagens no diretório (data mais antiga / mais recente) ou, alternativamente, dos metadados dos arquivos (JPEG, TIFF, RAW ...).

Se o input_directory_name estiver parecendo uma data "1.2.2012", ele deverá ser ignorado.

Se o input_directory_name contiver texto, o texto deve ser adicionado ao novo nome do diretório. Motivo: Eventos sem nome no iPhoto / Aperture são marcados automaticamente com uma data que infelizmente tem a ordem mal ordenada de DD.MM.AAAA

Eu pesquisei um pouco no Google, mas não encontrei facilmente uma maneira inteligente - possivelmente alguém já tenha encontrado esse problema antes?

    
por jdoe 03.11.2012 / 11:57

1 resposta

1

Primeiro de tudo: se você estiver tentando soluções, use uma cópia completa ou uma cópia de um subconjunto das imagens para evitar um desastre.

Você pode tentar algo nos seguintes termos:

for folder in $(ls -l | awk '{print $9}'); 
    do <magic here>;
done

A mágica pode ser algo como usar o comando identify se isso estiver disponível para você. Pelo que li, pode ler dados exif de fotos. Com base nisso, talvez você possa criar uma pasta ou mover o diretório, etc. etc.

    
por 03.11.2012 / 18:18