如果"拍摄日期"字段为空,则从照片的"创建日期"字段中插入'date taken'



我想知道如果"拍摄日期"字段为空,是否有办法根据"创建日期"字段大规模更改一系列照片?

从本质上讲,我试图创建一种方法,使脚本查看图像,如果拍摄日期为空,则将创建的大胆程度添加为拍摄日期字段,如果拍摄的日期字段有值,则继续。

也许ExifTool可以做到这一点,但我仍在研究如何做到。

您没有提到操作系统,但这个答案将主要适用于Windows,最后需要注意的是与Mac和视频文件一起使用。

部分问题在于;"拍摄日期";标签在Windows中,此属性由五个不同的可能标记填充,尽管EXIF:DateTimeOriginal可能是复制到的最佳标记。

第二个问题是什么标签是你的";创建日期";标签由于元数据非常混乱,因此有六个标签可以填充该属性。这完全取决于您使用什么来查看";创建日期";。

使用exiftool,为了找出要从中复制的标记("创建日期"(,请在文件上运行此命令
exiftool -time:all -G1 -a -s /path/to/file/

然后,您将检查输出,以找到要从中复制的标记的名称。然后,您可以运行此命令,将"替换为";SOURCETAG";带有要从
exiftool "-AllDates<SOURCETAG" /path/to/files/复制的标签的实际名称

AllDates是三个最常见的时间戳标签的快捷方式:DateTimeOriginalModifyDateCreateDate。这些应涵盖";"拍摄日期";所有物

此命令可创建备份文件。添加-overwrite_original以禁止创建备份文件。添加-r以递归到子目录中。

附加说明:对于Windows下的PNG文件,您应该使用PNG:CreationTime而不是AllDates。对于Mac下的视频文件(MP4/Mov(,除非包含时区,否则不希望将时间戳复制到DateTimeOriginal,因为这会导致照片应用程序显示损坏的时间戳。

相关内容

  • 没有找到相关文章

最新更新