Ich bin ja ein Fan der Kommandozeile, auf der man mit einfachen Befehlen scheinbar mühelos komplexe Aufgaben erledigen kann. Gerade wenn ich mit Bildern zu tun habe, ist ExifTool eines meiner Lieblingswerkzeuge. Nehmen wir einmal folgendes Szenario:

Für ein öffentliches Event sollen die Tätigkeiten einer Gruppierung als Diashow auf einem Beamer laufen. Für jedes Tätigkeitsgebiet der Gruppe gib es einen Ordner auf einem gemeinsam genutzten Rechner oder Server, in den die einzelnen Gruppenmitglieder Bilder ihrer Wahl einstellen dürfen. Diese sollen dann primär in der Reihenfolge der Projekte und sekundär nach dem Aufnahmedatum – welches sich in Sekunden, Stunden, Jahren unterscheiden kann – sortiert werden. Eine mögliche Ordnerstruktur könnte wie folgt aussehen:

  • Projekt Frühlingserwachen
    • BILD004.JPG
    • DCP_1457.JPG
    • fruehlungserwachen-01.jpg
    • IMG_0022.JPG
    • IMG_1052.JPG
    • IMG_9588.JPG
    • P1010147.jpg
    • P1910134.jpg
  • Sommerausflüge
    • 2012-07-28-sommerausflug05.jpg
    • Jürgen.jpg

Wer etwas Erfahrung mit digitalen Bildern hat, erkennt sofort die automatische Benennung unterschiedlicher Kameramarken, sowie die Bilder womöglich von Hand benannten Bilder. Es sollen hier jedoch erst alle Bilder zum Projekt Frühlingserwachen und dann die Bilder zu den Sommerausflügen, jeweils sortiert nach Datum/Uhrzeit angezeigt werden. Da es keinerlei Angaben dazu gibt, auf welche Software zur Bilddarstellung zurückgegriffen werden kann, scheidet ein Programm zum Erstellen einer sortierten Diashow im Vorfeld aus. Wie bekommen wir einen X beliebiges Bilddarstellungsprogramm also dazu, die gewünschte Reihenfolge einzuhalten?

Ein gängiger Trick besteht darin, die Bilder nach ihren Dateinamen sortieren zu lassen, da dies von jedem Programm und Betriebssystem annähernd einheitlich erledigt wird. Dafür benötigen wir jedoch korrekt benannte Bilder und das benötigt von Hand recht lange. An dieser Stelle kommt ExifTool ins Spiel. Mit Hilfe von ExifTool ist es z.B. möglich Bilder nach einem Muster umbenennen zu lassen, wie folgendes Beispiel zeigt:

exiftool -fileOrder datetimeoriginal '-FileName<${directory}%-.3nc.%le' -r -P ~/ordner-mit-bildern/

Dieser Befehl nimmt alle Bilder aus dem angegebenen Ordner und allen Unterordnern, schiebt sie in den obersten Ordner und benennt sie nach ordnername-001.jpg um, wobei die Nummerierung in der Reihenfolge des Aufnahmezeitpunktes erfolgt und die Dateierweiterung einheitlich klein geschrieben wird.

Um aus dem Bilderchaos in den einzelnen Projektordnern aus dem Beispiel zu Beginn eine sortierte Diashow zu machen, genügt es im Vorfeld die Projektordner umzubenennen und ein Präfix wie 01-projekt-fruehlingserwachen, 02-sommerausflüge zu verteilen, welches beim Umbenennen per ExifTool in den Bildnamen übernommen wird.