2026/8/20 1:16:40

一条命令完成 OneNote 导出 Markdown,2000 篇笔记搬进 Obsidian 只花一小时

一条命令完成 OneNote 导出 Markdown,2000 篇笔记搬进 Obsidian 只花一小时 一条命令完成 OneNote 导出 Markdown2000 篇笔记搬进 Obsidian 只花一小时【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter那个周六晚上我盯着硬盘里一个叫「笔记本导出」的文件夹发呆一千多个 html 文件、几百张路径全断的图片、表格全部散架成乱码。这已经是我第三次尝试 OneNote 导出 Markdown 的路子想把笔记搬进 Obsidian前两次都倒在半路。直到朋友甩来一个开源小工具onenote-md-exporter——一个专注 OneNote 笔记格式转换的本地命令行工具事情才有了转机。先说清楚我为什么受够了手工复制粘贴、OneNote 自带导出、在线转换网站这三条路我全试过结果都不尽如人意迁移方式层级结构内部链接图片附件数据安全手工复制粘贴全部丢失全部失效大量丢失安全OneNote 自带导出压成扁平失效可用安全在线转换网站压成扁平失效看运气要上传云端核心问题就两个要么结构被压扁要么内容不完整。对存了五年资料的人来说哪个都不能忍。先别急着动手看看它强在哪三点onenote-md-exporter 是一个在本地运行的开源命令行程序通过 OneNote 官方 COM 接口读取笔记本再借助 Pandoc 把内容转成 Markdown输出面向 Obsidian、Joplin 等主流笔记软件。它对普通用户真正重要的设计有三个第一数据从头到尾不出你的电脑。它直接调用本机安装的 OneNote 和 Word 程序读取内容不依赖任何云端服务。存着客户资料、私人日记的人可以放心用。第二笔记本的骨架完整保留。分区变成文件夹分区组变成嵌套目录子页面默认成为父页面的下级文件夹。导出的目录树和你平时看到的结构几乎一一对应而不是把所有页面哗啦一下倒进同一个文件夹。第三天生为 Markdown 生态而生。内部链接可以转成[[双链]]每篇笔记自动带上含创建时间、更新时间的 Front Matter 头复杂表格和格式由内置的 Pandoc 引擎兜底再跑一轮正则后处理修复毛刺。动手实操最省事的路和进阶的路三分钟上手的最快路径动手前先确认三件事Windows 10 及以上、OneNote 2013 及以上注意不支持微软商店版、Word 2013 及以上。然后克隆仓库进入src/OneNoteMdExporter/pandoc/目录把pandoc-3.8.3-windows-x86_64.zip解压让pandoc.exe和压缩包待在同一个文件夹打开 OneNote确认要导出的笔记本已经加载并同步完成程序读的是实时状态双击OneNoteMdExporter.exe它会列出本机所有笔记本勾选要导出的对象、选择格式、调整高级设置跑完自动弹出导出文件夹。全程不需要敲一行命令。批量与无人值守的进阶路径想要自动化加参数一次指定笔记本和格式即可git clone https://gitcode.com/gh_mirrors/on/onenote-md-exporter cd src/OneNoteMdExporter OneNoteMdExporter.exe --notebook 我的笔记本 --format 1 --no-input参数逐个拆开看--notebook 我的笔记本指定要导出的笔记本名称--format 11是 Markdown 文件夹格式2是 Joplin 原始目录格式--no-input全自动模式不需要任何交互确认。想一次导出所有笔记本就加--all-notebooks它会忽略--notebook把所有笔记本挨个处理一遍OneNoteMdExporter.exe --all-notebooks --format 1 --no-input遇到问题别慌高频报错排查手册以下问题都是真实踩过的按「症状 → 原因 → 解法」整理报System.Runtime.InteropServices.COMException。原因是程序没能和 OneNote 组件握手多半是本机 Office 安装有问题。解法是别急着重装 Office按doc/notebook-onepkg-export.md的说明把笔记本导出成.onepkg包换一台干净的电脑导入后再导出 Markdown效果一样、风险更低。导出后图片是坏的。原因是 OneNote 本地根本没缓存图片。到「文件 → 选项 → 同步」勾上下载所有文件和图像强制同步一次再重新导出基本就能解决。密码保护的分区变空了。原因是锁着的分区读不到内容。导出前手动解锁即可锁着的分区不会进入结果。提示文件路径过长。原因是笔记本里有标题超长的页面。把appSettings.json里的MdMaxFileLength调小一点从源头规避 Windows 路径上限。手写笔迹消失了。这是工具明确的边界手写内容不支持转换导出前心里要有数。再补充两个老用户才知道的进阶组合给 Obsidian 的组合OneNoteLinksHandling设为ConvertToWikilinkOneNote 内部链接变成[[双链]]双向链接直接可用ProcessingOfPageHierarchy保持HierarchyAsFolderTree层级就是文件夹AddFrontMatterHeader保持true每篇自动带创建/更新时间方便检索。给 Joplin 的组合格式选2链接策略换成ConvertToMarkdown导出后以原始目录方式导入 Joplin标签和层级都能对上。实测结果一小时的成果长这样我用存了五年、约 2000 篇笔记的笔记本做了完整实测导出后得到这样的目录我的笔记本/ ├─ 工作项目/ │ ├─ 需求文档/ │ │ ├─ 需求评审.md │ │ └─ 技术方案.md │ └─ 周报.md ├─ 生活随笔.md └─ resources/ ├─ 截图1.png └─ 附件.pdf页面是.md文件图片和附件统一收在resources文件夹Markdown 内部用相对路径引用。放进 Obsidian 仓库就能直接用不需要再改任何路径。抽查了十几篇带表格、带图的笔记表格结构完整、图片正常显示、双链跳转顺畅确实做到了导出后几乎不用改。最后照着这份清单走就行克隆仓库按上文把pandoc.exe解压就位先拿一个最常用的小笔记本试跑全程开着 OneNote 等它同步对照appSettings.json按目标平台Obsidian 还是 Joplin调好链接策略导出完随机抽查十几篇带表格、图片的笔记确认质量报错先看同目录下的logs.txt再带着日志去项目里提问。几个常被问到的Q一定要装 Word 吗要。转换的中间产物是 DocX过程依赖本机 Word 的 COM 接口。Q能只导一个分区或单页吗能。--section和--page参数分别对应分区和页面。Q苹果电脑能用吗目前不能。工具依赖 Windows 上的 OneNote 和 Word COM 接口只支持 Windows。那个周六晚上之后我再没为迁移的事失眠过。现在打开 Obsidian五年前的课件、三年前的技术总结全都好好地躺在那里。最痛苦的那一步onenote-md-exporter 已经帮我走完了剩下的就是和老笔记好好重逢。【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考