Typecho数据库格式转换为Hexo
由于自己博客框架从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里面了~