Read Existing Tags

The bare command just lists all the existing tags found in an image file:

exiftool PICTURE.png

Use the -a option to see all the entries:

exiftool -a PICTURE.png

If you want to see a specific tag add it to the command like:

exiftool -gpsdatetime PICTURE.png

If you need a custom output format, you can use theย -pย for Print Format and use tag names as a variable within a string, e.g.

exiftool -p 'This image was taken at $gpsdatetime' PICTURE.jpg

Multiple pictures

To deal with multiple pictures you can either point ExifTool at a directory instead of a single file. Theย -rย will run the command recursively, and process any images it finds in sub-directories. e.g. the following will work on all pictures in the Pictures directory, and below.

exiftool -r -gpsdatetime ~/Pictures

If you want to filter files based on their type/extension then use theย -extย flag and choose your extension. This isย notย case sensitive, but it will differentiate between โ€œ.jpgโ€ and โ€œ.jpegโ€ should you have both in your collection.

exiftool -gpsdatetime -ext jpg ~/Pictures

Editing tags

Generally editing tags is in the formatย -tagname='new tag value', the single quotes are only needed if your new value has spaces in it.

To delete a tag, and its value, just leave a blank after the equals sign, e.g.ย -tagname=.

There is also a special โ€œallโ€ tag, which is most useful if you want to remove any metadata from an image, e.g. the following would remove all metadata from all jpg files in the directory โ€œPicturesโ€.

exiftool -all= -ext jpg ~/Pictures

List tags

Some tags, like โ€œKeywordsโ€ are a list. These behaveย slightly differentlyย to other tags. Here you have to either list the entries separately, as follows:

exiftool -keywords=banana -keywords=fruit myimage.jpg

or use theย -sepย flag to do it in one entry.

exiftool -sep ", " -keywords="banana, fruit" myimage.jpg

If all you want to do is add or remove specific items you can use theย +=andย -=ย operators.