批量操作front matter工具
当你想为某个文件夹下的所有.md
文件添加、修改、删除某些front matter字段时,这个工具可以快速的为你批量操作。
首先,你需要在package.json
的scripts
中写入脚本:
// package.json
{
"scripts": {
"editFm": "node utils/editFrontmatter.js",
}
}
1
2
3
4
5
6
2
3
4
5
6
在utils/config.yml
配置要批量操作的文件夹和要编辑的字段,示例:
# utils/config.yml
#批量添加和修改、删除front matter配置文件
# 需要批量处理的路径,docs文件夹内的文件夹 (数组。映射路径:docs/arr[1]/arr[2] ... )
path:
- docs # 第一个成员必须是docs
- 《JS教程》专辑
- 第一章节
# 要删除的字段 (数组)
delete:
- article
# 要添加、修改front matter的数据 (front matter中没有的数据则添加,已有的数据则覆盖)
data:
author: 齐天大圣
sidebar: false
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
比如你要操作的文件夹路径是docs/《JS教程》专辑/第一章节
,你需要这样配置路径:
path:
- docs # 第一个成员必须是docs
- 《JS教程》专辑
- 第一章节
1
2
3
4
2
3
4
path
数组的第一个成员必须是docs
,如果你想操作docs
底下除了首页之外所有的.md
文件,只需保留第一个成员docs
即可。
你想删除article
字段:
delete:
- article
1
2
2
你想为这个文件夹下的所有.md
文件添加作者author
和隐藏侧边栏sidebar
:
data:
author: 齐天大圣
sidebar: false
1
2
3
2
3
最后,执行npm run editFm
命令,为了防止误操作,会有一个询问过程:
npm run editFm
? 批量操作frontmatter有修改数据的风险,确定要继续吗? (Y/n)
...
1
2
3
2
3
编辑 (opens new window)
上次更新: 2024/11/14, 23:52:33