hugo convert
把内容的前置元数据转换为另一种格式的父命令。
hugo convert 是用于转换前置元数据格式的父命令。它把内容目录里每个文件的前置元数据改写成另一种格式,便于在 YAML、TOML 与 JSON 之间迁移:例如从其他静态站点生成器搬过来之后,想让全站统一使用 TOML 前置元数据,就可以用它批量处理,而不必手工逐个文件改写。
hugo convert 本身不执行转换,需要搭配子命令使用:hugo convert toJSON、hugo convert toTOML 与 hugo convert toYAML。
用法
hugo convert [command] [flags]只运行 hugo convert 而不带子命令不会转换任何文件,Hugo 会提示需要一个子命令。
子命令
| 子命令 | 说明 |
|---|---|
hugo convert toJSON |
把内容目录中的前置元数据转换为 JSON,详见 hugo convert toJSON |
hugo convert toTOML |
把内容目录中的前置元数据转换为 TOML,详见 hugo convert toTOML |
hugo convert toYAML |
把内容目录中的前置元数据转换为 YAML,详见 hugo convert toYAML |
选项
| 选项 | 说明 |
|---|---|
-h, --help |
显示 convert 命令的帮助信息 |
-o, --output string |
写入文件的文件系统路径 |
--unsafe |
启用安全性较低的操作,请先备份 |
继承自父命令的全局选项
| 选项 | 说明 |
|---|---|
--clock string |
设定 Hugo 使用的时钟,例如 --clock 2021-11-06T22:30:00.00+09:00 |
--config string |
指定配置文件,默认为 hugo.yaml、hugo.json 或 hugo.toml |
--configDir string |
配置目录,默认为 config |
-d, --destination string |
写入文件的文件系统路径 |
-e, --environment string |
构建环境 |
--ignoreVendorPaths string |
对匹配给定 Glob 模式的模块路径忽略其中的 _vendor |
--logLevel string |
日志级别:debug、info、warn 或 error |
--noBuildLock |
不创建 .hugo_build.lock 文件 |
--quiet |
以静默模式构建 |
-M, --renderToMemory |
渲染到内存,主要用于运行服务器时 |
-s, --source string |
读取文件时相对的起始文件系统路径 |
--themesDir string |
主题目录的文件系统路径 |
示例
把项目内容的前置元数据统一转换为 TOML:
hugo convert toTOML转换会改写内容目录中的源文件,因此上游提醒先做备份;确认已有备份或已纳入版本控制后,再按需加上 --unsafe:
hugo convert toYAML --unsafe先把结果写到另一个目录,检查无误后再替换原文件:
hugo convert toJSON --output converted