Datum: 2005-01-20
Quelle: suse-linux
Das Modifikationsdatum von JPEG-Dateien soll anhand ihres Aufnahmedatums aus den EXIF-Headern gesetzt werden.
find . -name '*.[Jj][Pp][Gg]' -print | while read f; do extag="`exif -t 0x9003 \"$f\" 2>/dev/null | \ sed -rn '/Value/{s/.*Value: //;s/([0-9]+):([0-9]+):([0-9]+) (.+)/\1-\2-\3 \4/;p}'`" test -n "$extag" && touch -m -t "$extag" "$f" done
Zum Auslesen des EXIF-Header 9003 wird das kleine Tool exif benutzt. Seine Ausgabe wird mit einem sed so formatiert, dass sie durch einen touch ausgewertet werden kann. Ich habe meine damalige Variante modifiziert, sie hatte mit einer Kombination von awk und sed gearbeitet.