I have many photos spread across several folders. Many photos contain EXIF person tags created by Picasa. How can I remove these tags? http://exiftool.sourceforge.net
seems to be capable of doing the job, but how to use it for this special application? All other EXIF metadata as well as the file modification date should stay unchanged.
2 Answers
You can use this command
ExifTool -XMP-mwg-rs:all= -P FILEorDIR
The -P
makes sure the file system timestamps don't change. Add -r
to recurse. This command creates backup copies of the files. Add -overwrite_original
to avoid that.
-
\$\begingroup\$ This solution is much faster than my script! \$\endgroup\$ Commented Oct 8, 2015 at 6:14
I created a little bash script which does the job. I tested it using Cygwin. It uses the exiftool.
Find recursively all JPG files, display tagged persons, then remove all person related tags created by Picasa:
find . -type f -iname "*.jpg" -print0 | while IFS= read -r -d $'\0' file; do
exiftool -charset filename=Latin -RegionName "$file" | grep Region;
if [ $? -eq 0 ]; then
echo Removing name tags from "$file"...;
exiftool -charset filename=Latin "-FileModifyDate<FileModifyDate" -RegionAppliedToDimensionsW= -RegionAppliedToDimensionsH= -RegionAppliedToDimensionsUnit= -RegionName= -RegionType= -RegionAreaX= -RegionAreaY= -RegionAreaW= -RegionAreaH= -RegionAreaUnit= "$file";
rm "$file"_original
fi
done
Note: For Linux the charset filename
parameter must probably be changed.
Note2: To change the file modification date to the time the photo was taken use -FileModifyDate<DateTimeOriginal
instead of -FileModifyDate<FileModifyDate
.