跳转至

命名格式

KToolBox v1 的命名设置属于当前项目。CLI 与 WebUI 共同读取 ktoolbox.toml 中的 [naming];命名字段不再作为全局 dotenv 配置编辑。

设置目录结构

在 WebUI 打开**命名格式**,可以设置:

  • 作者、作品、修订、年份和月份目录模板;
  • 主文件(封面)与附件文件模板;
  • 作品内部的附件、修订、正文和外链名称;
  • 年月分组、混合作品和附件顺序命名。

附件顺序命名默认开启,因为 Pawchive 经常返回不可读的存储文件名。只有原始文件名有意义且需要保留时才建议关闭。

模板只能使用字段旁列出的变量 Chip,例如 {creator_name}、{creator_id}、{service}、{title}、{post_id}、{revision_id}、{year} 和 {month}。路径分隔符、父目录跳转、未知变量和不安全名称会在扫描前被拒绝。

“目录结构”和“命名模板”分别提供保存按钮。保存后会立即影响未来下载;仅保存命名设置绝不会移动旧文件。

“默认下载位置”也属于项目配置,默认值为 downloads,相对路径以项目根目录解析,也可以填写项目外的主机绝对路径。创建任务时依次使用:任务显式输出目录、自动同步计划显式输出目录、项目默认下载位置。任务创建后会固化解析出的绝对路径,后续修改项目默认值不会悄然移动既有任务。

目录结构与默认下载位置

将附件保存在作品目录

在“目录结构”中将附件目录设为 . 或 ./,即可把附件直接保存在作品封面和元数据旁。此规则仅适用于附件目录;正文、外链文件和修订目录仍需填写名称。

使用以下 v0 配置下载的旧文件,可以通过“旧下载目录转换 → 粘贴配置”进行转换:

KTOOLBOX_JOB__POST_STRUCTURE__ATTACHMENTS=./

请同时粘贴在 v0 中修改过的其他命名设置,省略的 ENV 字段会按 v0 默认值补齐。转换目标始终是当前项目格式。确认前先查看扫描预览:转换器依据 post.json 或作者索引逐个移动附件,包括可识别修订中的附件;封面和元数据不会被当作附件搬走,无法识别的文件保留在作品目录内原有的相对位置。目标文件已存在或路径不安全时会阻止转换,不会覆盖文件。

转换旧下载位置

只有在以前下载的内容需要采用已保存命名格式时,才需要打开独立的“旧下载目录转换”标签页。添加一个或多个旧位置,再点击“扫描旧下载位置”。这些位置只是转换扫描来源,不是未来任务的下载目录设置。

转换器可随时使用,并提供两种来源模式。“项目历史”允许多选已保存的命名版本,适合一个下载位置中混有多代目录结构的情况。“粘贴配置”支持旧 .env 命名键、完整 ktoolbox.toml、单独的 [naming] 表或无表头命名片段。带高亮的编辑器提供样例和字段级错误定位;粘贴原文仅在内存中解析,不会写入浏览器存储、日志、事件或转换历史。两种模式都始终把当前项目命名版本作为只读目标,绝不会覆盖项目配置。

每个已保存布局也会冻结当时的发布时间策略。修复前的项目版本会标记为“直接使用 Pawchive 原值”;粘贴 v0 .env 默认采用“Kemono UTC”,粘贴 TOML 可选择 Kemono UTC、Pawchive 原值或自定义 Service 时区。例如 Fanbox 的 2025-12-21T00:35:43 会先按 Asia/Tokyo 解释,UTC 目标下得到 2025-12-20T15:35:43+00:00,因此使用 {published} 的路径会从 2025-12-21 转换到 2025-12-20。post.json 中仍保留 Pawchive 原始值。

扫描直接读取文件系统,而非仅依赖任务历史,也不会访问 Pawchive。KToolBox 通过作者目录身份、creator-indices.ktoolbox 与 post.json 识别内容,并拒绝跟随越出所选位置的符号链接。

预览会显示每位作者的新旧路径、作品数、文件数、总大小、跳过项和冲突。所有可安全转换的作者默认选中,也可逐项取消。

移动端命名转换预览

KToolBox 不会覆盖或合并目标目录。扫描结果过期、配置变化、相关任务处于活动状态、目标重复或文件系统变化时,都必须重新扫描。

转换与恢复

KToolBox 会以持久后台作业执行选中的移动。“暂停”会等待当前原子文件操作完成并保留已移动内容;“继续”前会重新校验配置、文件指纹、目标冲突和可用空间。“取消”含义不同,会按相反顺序回滚已完成移动;写入失败或进程中断也会安全回滚。已保存的命名格式继续用于未来下载。

转换进度和历史保存在 .ktoolbox/webui.sqlite3。成功后会清理临时操作日志,完成记录会保留到用户手动删除。转换会删除已空的旧来源目录,但不会删除无关文件。

首次启动迁移

只有检测到 .env 或 prod.env 中存在旧命名键时,才会显示迁移向导。启动阶段只检测并在终端警告,不会提前修改任何文件。登录后,向导会:

  1. 显示每个来源、旧值与当前项目值;
  2. 默认选中旧值,并允许逐项保留项目当前值;
  3. 预览将修改的项目配置和将删除的 dotenv 键;
  4. 用户确认后备份到 .ktoolbox/migrations/project-naming-v2/,再原子写入 ktoolbox.toml 并移除旧键;
  5. 配置迁移成功后,再进入独立的旧目录转换步骤。

旧版命名设置迁移向导

关闭或点击“忽略”只会关闭本次弹窗。只要旧键仍然存在,刷新或重新登录后仍会显示。配置迁移与目录转换彼此独立:配置迁移成功后,先核对一个或多个旧位置,再显式点击“扫描旧下载位置”;仅打开转换工具不会自动扫描或移动文件。

CLI 同样使用项目命名设置。旧项目尚未完成迁移时,请启动该项目的 WebUI 并确认带备份的原子迁移。仅存在于进程环境中的旧值无法由 KToolBox 删除;项目命名会忽略这些值,并持续警告用户从启动环境中移除。

相关指南