#!/usr/bin/perl # Quelle: http://www.perl-community.de/bat/poard/thread/19667 # install Image::ExifTool use strict; use warnings; use 5.010; my $DEBUG; #use Time::Piece; use Time::Seconds; my $t = Time::Piece->strptime('2015:05:26 13:55:22', '%Y:%m:%d %H:%M:%S'); my $zeit_differenz = +2; # 2 Sekunden my $start_datum; my $first = 1; for my $fn (<*.jpg>) { # hole alle Dateien per glob my $date = $t->ymd(":")." ".$t->hms; # Datumszeichenkette bauen $DEBUG && say "Next date: $date"; change_exif_date($fn, $date); # neues EXIF-Datum in Datei setzen $t += $zeit_differenz; # nächsten Zeitpunkt setzen } use Image::ExifTool; sub change_exif_date { my $file_name = shift; my $date = shift; my $exifTool = Image::ExifTool->new; my $info = $exifTool->SetNewValuesFromFile($file_name); # Original EXIF-Daten holen $exifTool->SetNewValue(DateTimeOriginal => $date); # Originaldatum (EXIF-Tag DateTimeOriginal) setzen $exifTool->SetNewValue(CreateDate => $date); # Erzeugungsdatum (EXIF-Tag CreateDate) setzen my $success = $exifTool->WriteInfo($file_name); # EXIF-Daten zurückschreiben return $success; }