Rinominare foto JPG in base alla data dello scatto

Le moderne fotocamere digitali ci permettono di fare scatti a profusione senza il vincolo di spesa imposto dai vecchi rullini. Spesso si torna casa dalla vacanze con parecchio materiale da scaricare ed archiviare negli hard disk di casa.

Probabilmente ognuno ha il suo metodo per archiviare: crea cartelle per evento oppure per anno e mese degli scatti o qualsiasi altra organizzazione che permetta di archiviare e ritrovare gli scatti all’occorrenza.

I file jpeg prodotti dalle comuni macchine digitali hanno nomi del tipo DSC_0134.jpg ovvero composti da una sigla ed un numero progressivo. Questo tipo di denominazione presenta 2 problemini:

  1. Il nome della foto è assolutamente scollegato dal contenuto della stessa, dal momento in cui è stata scattata e non offre nessuna informazione inerente lo scatto.
  2. Può dare origine a conflitto di nomi. Ovviamente il numero progressivo non va avanti infinitamente, ad un certo punto la numerazione rincomincia. Ciò accade anche in concomitanza della formattazione delle schede di memoria o può succedere anche nel momento in cui utilizziamo più schede per archiviare il nostro materiale o anche nel momento in cui scambiamo gli scatti con i nostri eventuali compagni di vacanza.

Personalmente non amo avere file con lo stesso nome seppur in cartelle diverse perchè mi capita spesso di fare dei lavori sulle foto o farne una selezione per lo sviluppo e quindi metterle tutte in una pennetta o comunque in una stessa cartella.

ORmai tutte le fotocamere digitali, anche le più datate, inseriscono nel file jpg le cosiddette informazioni EXIF, ovvero una serie di dati relativi allo scatto. Questi dati possono variare tra diverse marche e modelli di fotocamera ma in generale comprendono informazioni tipo:

  • Marca della fotocamera
  • Modello fotocamera
  • Orientametno foto
  • Data e ora dello scatto
  • Dimensioni dell’immagine
  • Tempo di esposizione

e molti altri ancora. In generale una informazione che comunemente si trova è la data e ora dello scatto.

Una soluzione ai sopraesposti problemi del nome del file per le foto potrebbe essere rinominare gli scatti in base a data e ora. Gli scatti che avvengono nello stesso secondo dovrebbero essere rari, limitatamente a situazioni di autobraketing o di multiscatto sportivo. Ad ogni modo l’idea è di estrarre da ogni file data e ora dello scatto, rinominarlo secondo il formato AAAAMMGG_HHMMSS più un eventuale numero progressivo per scatti avvenuti nello sesso secondo.

Per fare tutto ciò in automatico ho preparato un script php che fa proprio questa operazione.

AVVERTENZE:

1.   Lo script è stato concepito in ambiente LINUX. Essendo in php può girare tranquillamente anche in ambiente windows avendo però l’accortezza di cambiare il comando di rinominazione dei file. Sotto Linux è

mv <nomefile> <nuovonome>

mentre in ambiente windows dovrebbe essere

ren <nomefile> <nuovonome>

2.   Ovviamente per funzionare deve essere installato nel sistema php e in particolare l’interprete da riga di comando;
3.   Prima di avviare lo script sulle vostre collezioni di foto, create una cartella di test e copiateci qualche file per provare che tutto vada correttamente a buon fine. Personalmente NON MI ASSUMO RESPONSABILITA’ circa un uso errato o sconsiderato dello script!

L’utilizzo è semplice:
collocatevi nella cartella che contiene gli scatti e digitate

./renphotobyname *.JPG

ed automaticamente i file verranno rinominati. Eventualmente è possibile anche utilizzare lo script specificando singoli nomi di file senza caratteri jolly:

./renphotobyname nome1.jpg nome2.jpg nome3.jpg

oppure specificando tutto ciò che è presente in cartella:

./renphotobyname *

Lo script si preoccuperà di saltare automaticamente le cartelle e segnalare i file da cui non è possibile ricavare dati EXIF.

SCARICA LO SCRIPT

Category: Senza categoria
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>