如何使用exiftool实现无对应标签时才写入修改日期的操作
ExifTool 仅在修改日期标签不存在时写入的实现方法
通过 ExifTool 内置的 -if 条件判断参数即可实现该需求,只有符合判断规则的文件才会执行后续写入操作,不会覆盖已存在的标签值。
常用使用示例
- 场景1:将 EXIF 标准修改日期标签
ModifyDate的值设置为文件系统自带的修改时间,仅当ModifyDate标签不存在时执行写入
# macOS / Linux 环境 exiftool -if 'not $ModifyDate' '-ModifyDate<FileModifyDate' 目标文件/目录路径 # Windows 命令行/PowerShell 环境(单引号替换为双引号) exiftool -if "not $ModifyDate" "-ModifyDate<FileModifyDate" 目标文件/目录路径
- 场景2:自定义指定时间写入拍摄日期标签
DateTimeOriginal(如果你的需求是补充拍摄日期),仅当标签不存在时执行写入
exiftool -if 'not $DateTimeOriginal' -DateTimeOriginal="2024:05:20 14:30:00" 目标文件路径
可选辅助参数
- 添加
-overwrite_original参数:直接修改原文件,不生成后缀为_original的备份文件 - 添加
-r参数:递归处理目标目录下所有子目录内的文件 - 添加
-v参数:试运行仅输出待处理文件列表,不会实际修改文件,可用于提前验证规则是否符合预期
内容的提问来源于stack exchange,提问作者user1555314
相关产品推荐
相关产品推荐

