2.2 KiB
2.2 KiB
name, description
| name | description |
|---|---|
| jellyfin-nfo-builder | 为剧集整理统一文件名、生成缺失的 Jellyfin .nfo 剧集元数据 |
Jellyfin NFO 剧集元数据补齐技能
为剧集目录整理统一文件名,并为缺失的集数生成标准的 Jellyfin .nfo 元数据文件。
适用场景
- 手动清理/重命名剧集文件后,部分集数的
.nfo元数据缺失 - 从不同来源合并剧集(高质量版 + 补全集),需要统一格式
- 批量标准化剧集视频文件和元数据
前置条件
- 视频文件已整理到一个目录
- 有一条完整的剧集(有
.nfo示例可参照格式) - 了解剧集的总集数
- shell 工作目录为剧集所在目录
步骤
1. 检查现有状态
列出目录下所有视频文件和 .nfo 文件:
ls -lh *.mp4 *.nfo 2>/dev/null
确定:
- 总集数
- 已有哪些集的
.nfo - 哪些集缺失
.nfo - 文件名是否统一
2. 读取一个已有 .nfo 作为模板
cat "剧集名 第xx集.nfo"
标准 Jellyfin 剧集 nfo 格式:
<?xml version="1.0" encoding="UTF-8"?>
<episodedetails>
<title>第N集</title>
<season>1</season>
<episode>N</episode>
<plot>剧集名 第N集</plot>
<runtime>233</runtime>
<aired>2026-01-01</aired>
</episodedetails>
3. 生成缺失的 .nfo
cd /path/to/剧集目录
for i in 4 5 8 9 10 11; do
cat > "剧集名 第${i}集.nfo" << EOF
<?xml version="1.0" encoding="UTF-8"?>
<episodedetails>
<title>第${i}集</title>
<season>1</season>
<episode>${i}</episode>
<plot>剧集名 第${i}集</plot>
<runtime>233</runtime>
<aired>2026-01-01</aired>
</episodedetails>
EOF
done
runtime(时长秒数)和aired(首播日期)可以参照已有文件填写,或设为默认值。
4. 检查结果
ls -lh *.mp4 *.nfo 2>/dev/null
确认每一集都有对应的视频文件和 .nfo 文件。
注意事项
- Jellyfin 依赖文件名排序,统一格式为
剧集名 第XX集.mp4(两位数字,按字母排序正确) .nfo中的<episode>标签必须与集数一致- 如果整个剧集目录还没有
tvshow.nfo和season.nfo,也需要一并创建 - 视频文件命名应与
.nfo文件名完全一致(仅扩展名不同)