2017-02-21 47 views
0

问题:exiftool防止重复IPTC:关键字/ XMP-DC:主体采用加时+ =

时,我有一个jpg蒙山IPTC:关键字=霍利迪和我执行

  • exiftool MYIMAGE .JPG -IPTC:关键字+ =霍利迪-IPTC:关键字+ =海洋

图像有两个 “霍利迪” 标签

,以避免重复我目前使用

  • exiftool myImage.jpg -IPTC:关键词=霍利迪-IPTC:关键字+ =霍利迪-IPTC:关键词=海洋-IPTC:关键字+ =海洋

所以如果关键字在jpg中不存在,“ - =”不起作用。

但是,这种方法的缺点是,即使由于关键字已经存在,jpg总是被修改,即使它不是必需的。

是否有更高效的axiftool-api调用方式来添加仅在需要时才会更改的关键字/主题?

背景:

目前我实现Android和PC之间的关键字/对象元数据同步。

的Android生成的每次改变一个MSDOS批处理脚本条目,我使用exiftool基于蝙蝠 脚本应用在PC端

因为PC关键字更改元数据的变化可以来自不同的Android设备关键字必须被添加/移除并且不能完全设置。

回答

1
exiftool.exe myImage.jpg -if "not $keywords =~ \"holliday\"" -IPTC:Keywords+=holliday 

如果关键字不存在,请添加它。

编辑适应评论

exiftool.exe^
    -if "not $keywords =~ \"holliday\"" -IPTC:Keywords+=holliday^
    -execute^
    -if "not $keywords =~ \"ocean\"" -IPTC:Keywords+=ocean^
    -common_args myImage.jpg 
+0

这是否语法还会如果我有一个EXIF API调用多个关键字工作?例如:我已经有*假期*,并且我想要确保afterwad * holliday *和* ocean *已设置? – k3b

+0

@ k3b,回答更新 –

+0

完美的解决方案按预期工作。非常感谢 – k3b