使用Exiftool批量将JSON标签导入Windows下JPG文件元数据
批量导入JSON标签到JPG元数据(ExifTool+Windows批处理方案)
直接上可执行的解决方案,适配你的Windows 10场景:
步骤1:准备工作
确保以下文件都在同一目录:
- exiftool.exe
- 所有待处理的JPG文件及其同名的
.jpg.json文件 - 新建的批处理脚本(比如命名为
ImportTags.bat)
步骤2:编写批处理脚本
将以下代码复制到ImportTags.bat中:
@echo off setlocal enabledelayedexpansion for %%f in (*.jpg) do ( set "jsonFile=%%f.json" if exist "!jsonFile!" ( for /f "delims=" %%t in ('powershell -Command "$tags = (Get-Content '!jsonFile!' | ConvertFrom-Json).result.tags | ForEach-Object { $_.tag.en }; $tags -join ', '"') do ( set "tagList=%%t" ) if not "!tagList!"=="" ( exiftool.exe -Keywords="!tagList!" "%%f" echo 已处理: %%f ) else ( echo 无有效标签,跳过: %%f ) ) else ( echo 未找到对应JSON,跳过: %%f ) ) echo 处理完成! pause
脚本说明
- 遍历目录下所有JPG文件,自动匹配对应的
.jpg.json文件 - 用PowerShell解析JSON,提取
result.tags数组中每个元素的tag.en字段,拼接成逗号分隔的标签字符串 - 通过ExifTool将标签写入JPG的
Keywords元数据字段(如果需要写入其他字段,比如Subject,只需把-Keywords改成-Subject即可) - 跳过无对应JSON或无有效标签的文件
注意事项
- 处理前务必备份文件,避免操作失误导致数据丢失
- 如果标签包含逗号、引号等特殊字符,可将拼接符从
,改成;,ExifTool会自动识别分号分隔的多标签 - 确保Windows 10的PowerShell可正常运行(默认已启用,无需额外配置)
内容的提问来源于stack exchange,提问作者Linh Son Nguyen
相关产品推荐
相关产品推荐

