gpt4 book ai didi

shell - Exiftool:将文本文件中的元数据批量写入 JPEG

转载 作者:行者123 更新时间:2023-12-04 16:18:22 25 4
gpt4 key购买 nike

我想使用 ExifTool 批量写入以前保存在文本文件中的元数据。

假设我有一个包含以下 JPEG 文件的目录:

001.jpg 002.jpg 003.jpg 004.jpg 005.jpg

然后我创建文件 metadata.txt ,其中包含后跟冒号的文件名,然后我将其分发给同事,他将使用所需的元数据填充它——在本例中为逗号分隔的 IPTC 关键字。完成后文件如下所示:
001.jpg: Keyword, Keyword, Keyword 
002.jpg: Keyword, Keyword, Keyword
003.jpg: Keyword, Keyword, Keyword
004.jpg: Keyword, Keyword, Keyword
005.jpg: Keyword, Keyword, Keyword

我将如何将此文件提供给 ExifTool 并确保将正确的关键字保存到正确的文件中?如果有帮助,我也愿意更改文件的结构,例如将其格式化为 CSV、JSON 或 YAML。

最佳答案

如果可以把格式改成CSV文件,那么exiftool可以直接用 -csv option读取.

您必须以这种方式重新格式化它。第一行必须在文件名上方有“SourceFile”的标题,在关键字上方有“Keywords”。如果文件名不包含文件的路径,则必须从与文件相同的目录中运行命令。整个关键字字符串需要用引号括起来,这样它们就不会被视为单独的列。结果如下所示:

SourceFile,Keywords
001.jpg,"KeywordA, KeywordB, KeywordC"
002.jpg,"KeywordD, KeywordE, KeywordF"
003.jpg,"KeywordG, KeywordH, KeywordI"
004.jpg,"KeywordJ, KeywordK, KeywordL"
005.jpg,"KeywordM, KeywordN, KeywordO"

那时,您的命令将是 exiftool -csv=/path/to/file.csv -sep ", " /path/to/files
-sep option需要确保将关键字视为单独的关键字而不是单个长关键字。

与循环遍历文件内容并为每一行运行 exiftool 的脚本相比,这具有优势。 Exiftool 最大的性能影响在于它的启动和循环运行会非常慢,尤其是在大量文件上(参见 Common Mistake #3)。

ExifTool FAQ #26有关从 csv 文件读取的更多详细信息。

关于shell - Exiftool:将文本文件中的元数据批量写入 JPEG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60392676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com