博客迁移计划
2026/1/14...大约 2 分钟
博客迁移计划
本计划旨在将博客文章从 D:\src_code\github_repo\guang1234567\Guang1234567.github.io\_posts 目录迁移至 d:\src_code\github_repo\guang1234567\Mister-Hope.github.io\src_private\code\android\advance-topic\ 目录。
迁移过程将参考现有文件 2019-08-27-Android-NDK-Haskell.md 和 README.md 的结构和格式。
计划步骤
1. 准备工作
- 分析源目录: 遍历
D:\src_code\github_repo\guang1234567\Guang1234567.github.io\_posts目录,获取所有需要迁移的 Markdown 博客文章(.md文件)列表。 - 创建资源目录: 在目标目录
d:\src_code\github_repo\guang1234567\Mister-Hope.github.io\src_private\code\android\advance-topic\下创建assets文件夹,用于存放所有文章关联的图片资源。
2. 迁移单篇文章(对每篇文章执行)
对于源目录中的每一篇博客文章,执行以下操作:
复制文章: 将 Markdown 文件从源目录复制到目标目录。
调整 Frontmatter:
- 读取新复制的 Markdown 文件内容。
- 解析其 Frontmatter(文件头部的
---包围区域)。 - 根据
2019-08-27-Android-NDK-Haskell.md的格式,对 Frontmatter 进行标准化处理:- 确保
category字段包含Android和高级话题。 - 可以统一添加
icon: android字段。 - 调整或保留
title,date,tag等字段。
- 确保
- 将更新后的内容写回文件。
迁移并更新图片资源:
- 识别图片: 扫描文章内容,使用正则表达式(如
!\[.*?\]\((.*?)\))查找所有图片链接。 - 迁移图片:
- 对于每一个找到的图片链接,定位其在旧项目中的实际文件路径。
- 将图片文件复制到第一步创建的
assets目录中。 - (可选)重命名: 为防止文件名冲突,可将图片重命名,例如采用
文章文件名-原图片名的格式。
- 更新链接: 在 Markdown 文件中,将所有旧的图片路径替换为指向
assets目录中对应图片的新相对路径(例如assets/your-image.png)。
- 识别图片: 扫描文章内容,使用正则表达式(如
更新索引文件:
- 读取目标目录下的
README.md文件。 - 从当前文章的 Frontmatter 中提取标题(
title)。 - 在
README.md的列表末尾,追加一行指向新文章的链接,格式为:- [文章标题](文章文件名.md)。
- 读取目标目录下的
3. 自动化建议
为提高效率,以上步骤可以通过编写自动化脚本来执行。脚本的主要逻辑如下:
- 获取源目录中所有
.md文件列表。 - 循环遍历该列表中的每个文件路径。
- 在循环的每一次迭代中,执行“迁移单篇文章”中描述的所有步骤(复制、修改 Frontmatter、迁移图片、更新链接)。
- 在处理完一篇文章后,立即更新
README.md文件。
完成以上所有步骤后,博客文章及其相关资源将完成迁移,并符合新目录的结构规范。