ExifTool is a free 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. ExifTool will read and write maker-notes of most of the popular digital cameras. It will also allow for numerous output formatting options (including tab-delimited, HTML, XML, and JSON) along with multilingual output and 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, and fix image timestamps. It can additionally 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.