ExifTool is a command-line application for reading, writing and editing meta information in a wide variety of files.
It supports many different metadata formats including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop IRB, FlashPix, AFCP and ID3, as well as the maker notes of many digital cameras by Canon, Casio, FLIR, FujiFilm, GE, HP, JVC/Victor, Kodak, Leaf, Nikon, Nintendo, Minolta/Konica-Minolta, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One, Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and Sony.
This highly customizable tool allows a great deal of personalization and offers fast and flexible features that will make it usable in almost any situation. It will read and write maker notes of most popular digital cameras, allow for numerous output formatting options (including tab-delimited, HTML, XML and JSON) along with multilingual output, as well as the ability to quickly extract thumbnail images, preview images, and large JPEG images directly from RAW files.
ExifTool also can geotag images from GPS track log files (with time drift correction), generate track logs from geotagged images, fix image timestamps, rename files organizing them in directories (by date or by any other meta information), copy/delete meta information between files (even different-format files), and read/write structured XMP information.
Version History for ExifTool: http://www.sno.phy.queensu.ca/~phil/exiftool/history.html