由于自己博客框架从Typecho转换到了Hexo,整体的数据格式还是有一定的区别的,所以如何将把我之前的数据导过来是一个头大的事情。

Github上找了几个人写的方案,感觉思路都没有问题,只是感觉还是有点繁琐。

困扰了我几天之后,这个问题在今天得到了解决。

参考了下这为朋友的Tyephcoq迁移到Jekyll,我也下载了这个库使用了下,特别的方便。

分享给大家,戳这里

使用方法很简单,一行命令就可以搞定。连接服务器之后按格式转换后,保存本地。

typecho2md --host localhost -u root -k root -d typecho -p typecho_ -t tempt.md outputdir/

配置的模版信息tempt.md:

---
layout: <%- type %>
title: "<%- title %>"
keywords: 
description: ""
category: 
tags: 
---

<%- text %>

在导出的过程中,第一次我收到了一个异常信息:

throw err; // Rethrow non-MySQL errors
^
TypeError: Cannot read property 'split' of null

应该是拆分数据的时候出了问题。到数据库里面一查。果然,有一篇自动保存的草稿记录,其中的文章内容字段是Null,所以造成了这样的问题。

删除这一条数据,删除之前的outputdir下面的所有文件,重新运行一次。

搞定。

数据都到Hexo里面了~