I was looking for a utility to do a batch run through subdirectories of JPG files I have and create an XMP sidecar file for each. Exiftool is one of the best tools to do this, and it has been around now for nearly 20 years.
It can do just about any EXIF manipulation you can think of and is actually used in the background by many other applications, such as digiKam. In fact, you could write your own application in Python, or another language, to manipulate EXIF data with Exiftool.
It is a very powerful way of doing a metadata search through all your digital photos to find photos taken with a specific camera, time of the day, location, or any other metadata saved in the image. For example, say you edited some photos a day or two after you took them, Exiftool can help do a single batch update to change those creation dates back to the original photo dates. Of if your camera’s date was incorrect, you could batch update the date of hundreds of photos, or you could strip out the metadata before uploading photos to a social media site. It should be possible, too, to search thousands of your photos for those taken at your home location, and then to strip out the geolocation data.
If the command line seems a bit daunting, there is also an excellent GUI app written in Java called jExifToolGUI that runs across the various desktop OS’s too. This post’s featured image shows what that application looks like.
Both Exiftool and jExifToolGUI have been receiving regular updates, so are both actively maintained.
The site linked below also contains some useful reference links at the bottom of its page.
jExifToolGUI is available at https://hvdwolf.github.io/jExifToolGUI/