Change EXIF meta-data of multiple images in single click

I ran into big problem yesterday night.

I took out my old digital camera, and started using it without setting current date and time.

All photos clicked now have date as Jan 01, 2009

I want to change the date and time (and other EXIF image meta-data) of multiple images.

Please recommend some software which can process on multiple images in single click/go.


ExifTool is the one to go for.

It has a time shift feature that allows you to shift the dates.

Date/Time Shift Feature

Have you ever forgotten to set the date/time on your digital camera before taking a bunch of pictures? ExifTool has a time shift feature that makes it easy to apply a batch fix to the timestamps of the images (ie. change the "Date Picture Taken" reported by Windows Explorer). Say for example that your camera clock was reset to 2000:01:01 00:00:00 when you put in a new battery at 2005:11:03 10:48:00. Then all of the pictures you took subsequently have timestamps that are wrong by 5 years, 10 months, 2 days, 10 hours and 48 minutes. To fix this, put all of the images in the same directory ("DIR") and run exiftool:

exiftool "-DateTimeOriginal+=5:10:2 10:48:0" DIR

The example above changes only the DateTimeOriginal tag, but any writable date or time tag can be shifted, and multiple tags may be written with a single command line. Commonly, in JPEG images, the DateTimeOriginal, CreateDate and ModifyDate values must all be changed. For convenience, a shortcut tag called AllDates has been defined to represent these three tags. So, for example, if you forgot to set your camera clock back 1 hour at the end of daylight savings time in the fall, you can fix the images with:

exiftool -AllDates-=1 DIR

See Image::ExifTool::Shift.pl (download in PDF format) for details about the syntax of the time shift string.

Some things to note:

Test on a small batch of copies first until you get the date syntax you want.

I suggest you copy or move your images to a new folder first. And run the command on that directory.

If you run exiftool on a directory it will look in sub directories and modify any image files it finds.

Exiftool WILL automatically append '_original' on the end of your original files and create a new copy for you with the modifications.

You can override this by using the '-overwrite_original' option.

exiftool  -overwrite_original -AllDates+="0:2:1 10:48:0" /Users/UserName/Desktop/testFolder

This example shifts forward 0 years, 2 months, 1 day, 10 hours, 48 minutes, 0 seconds.

Using a single set of time shifts i.e instead of "0:2:1 10:48:0" you use "10:48:0".
Exiftool will see this as hh:mm:ss. And you can omit 0 where you do not want to put a shift.

exiftool  -overwrite_original AllDates+="9::" /Users/UserName/Desktop/testFolder

This example shifts forward 9 hours.

   exiftool  -overwrite_original -AllDates-="9::" /Users/UserName/Desktop/testFolder

This example shifts back 9 hours.

Notice AllDates-=" and AllDates+=" , one has a plus one has a minus.

Also Remember you are shifting time not stamping a time stamp.

So if my original date was : 2011:07:21 01:41:29

and I used exiftool -overwrite_original -AllDates-="24::" /Users/UserName/Desktop/testFolder

Then I would get : 2011:07:20 01:41:29

Do download the PDF with the syntax

And make sure you look at the difference with the options -overwrite_original_in_place and -overwrite_original
Documentation


OS X Photos app has this functionality built in, under Image -› Adjust Date and Time.

It opens a dialog showing current time stamp and prompting for corrected one. If multiple images were selected, date and time of the first photo is shown; the adjustment is used to calculate time shift to apply to all selected photos.