Diversos programas que lidam com imagens - principalmente os de gerenciamento e galerias - utilizam o cabeçalho EXIF presente em cada imagem para definir a data das fotos. Acontece que basta esquecermos de ajustar a data ao ligar a máquina digital que todas as fotos tiradas terão o cabeçalho erroneamente gravado.
O grande problema disso é que ao utilizar as fotos em programas como F-Spot e Picasa, ou mandá-la a serviços de compartilhamento como o Flickr, as coleções podem ficar um pouco bagunçadas. Para resolver este problema eu adotei um sistema pessoal de organização das fotos em pastas, e um programinha de edição de cabeçalhos chamado jhead.
apt-get install jhead
Organizando as pastas segundo o seguinte modelo:
AAAA-MM-DD Nome da Pasta
Onde AAAA-MM-DD definem a data em que as fotos foram tiradas. Qualquer coisa colocada como “Nome da Pasta” não interferirá no script. Desse modo as pastas também serão organizadas por nome no diretório. Ao meu sabor fica uma coisa bem organizada:
2008-06-22 NZ Taharoa 2008-06-22 NZ Tongaporutu 2008-06-23 NZ Auckland 2008-06-28 India Chennai 2008-06-30 India Mahabalipuram 2008-07-03 India Puttaparthi
No diretório onde estão as pastas, basta então executar o script para ajustar as fotos segundo o nome de suas pastas.
for i in * do ano=$(echo $i | cut -d ' ' -f1 | cut -d '-' -f1) mes=$(echo $i | cut -d ' ' -f1 | cut -d '-' -f2) dia=$(echo $i | cut -d ' ' -f1 | cut -d '-' -f3) cd "$i" jhead -ts$ano:$mes:$dia-12:00:00 * cd .. done
Note que o parâmetro -ts do jhead necessita também de um formato para a hora, aqui ajustado para 12:00:00, o que pode ser mudado para qualquer valor que respeito o formato de hora. Os nomes das pastas também podem ser ajustados de qualquer outra maneira bastando para isso a expressão regular correta para capturar os valores para ano, mês e dia.