OneNote笔记迁移5步搞定:onenote-md-exporter无损导出Markdown完整教程
OneNote笔记迁移5步搞定onenote-md-exporter无损导出Markdown完整教程【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporteronenote-md-exporter 是一款运行在 Windows 上的开源命令行工具用于把 OneNote 笔记本整体导出为 Markdown 或 Joplin 原始目录格式。如果你正在考虑把多年笔记迁到 Obsidian、Joplin 这类 Markdown 生态或者只是想给笔记做一份开放格式的本地备份它就是为你准备的。你的笔记是不是也困在这样的围城里在决定换工具之前先看看自己有没有中过这些招格式被锁死复杂表格、嵌入文件换个平台就显示异常很多导出方法只能保住七成内容层级被压扁笔记本→分区→子分区→页面的完整结构导出后变成一摞平铺文件链接全失效笔记里的 OneNote 内部链接迁过去就变成死链知识网络直接断掉隐私有顾虑在线转换工具要上传整本笔记等于把家底交到别人手里onenote-md-exporter 的定位很朴素全程本地处理数据不出这台电脑。它通过 OneNote 和 Word 的官方接口读取原始数据再由 Pandoc 引擎做格式转换最后用正则规则修一遍排版瑕疵目标是保住 95% 以上的结构与格式。工具作者自己也在文档里反复提醒导出前先备份这种克制反而让人放心。先别急着装onenote-md-exporter 的环境要求清单 ✅动手前花两分钟核对三件事能省掉后面大半的报错项目要求操作系统Windows 10 及以上OneNote2013 及以上桌面版Windows 商店版不支持Word2013 及以上用于把页面转为 DocX 再转 Markdown运行时基于 .NET 10 自包含发布装好对应运行时即可需要说明的是商店版 OneNote 无法被这个工具调用密码保护的分区如果不提前解锁也不会导出——这两条是它已知的边界选型时心里有数就行。5步完成第一次导出onenote-md-exporter 上手流程 拿到程序克隆仓库编译或直接下载发布包git clone https://gitcode.com/gh_mirrors/on/onenote-md-exporter补齐 Pandoc进入src/OneNoteMdExporter/pandoc/目录把pandoc-3.8.3-windows-x86_64.zip解压让pandoc.exe落在该目录下。漏掉这步会直接报找不到 pandoc.exe预热 OneNote先启动 OneNote确认要导出的笔记本已加载并完成同步运行程序双击OneNoteMdExporter.exe按提示选择笔记本编号输入 0 导出全部再选格式——1是 Markdown2是 Joplin 原始目录喝杯咖啡等着☕导出结束会自动打开导出文件夹中途可随时输yes打开appSettings.json调参数命令行模式同样支持后面批量脚本就用它OneNoteMdExporter.exe --notebook 技术笔记 --format 1 --no-input常用参数有--section只导某个分区、--page只导某一页、--all-notebooks忽略笔记本名全部导出、--ignore-errors遇到坏页也继续。想了解全部参数运行OneNoteMdExporter.exe --help即可。三处关键配置导出结果由你说了算 ⚙️appSettings.json是控制导出行为的核心新手只需要关心三组开关。① 页面层级怎么摆ProcessingOfPageHierarchyHierarchyAsFolderTree父页面变成子页面的文件夹默认值层级一目了然HierarchyAsPageTitlePrefix把父页面名拼进文件名前缀适合目录不能有太多子文件夹的情况IgnoreHierarchy完全忽略父子关系最扁平② OneNote 内部链接怎么处理OneNoteLinksHandlingConvertToWikilink转成[[页面名|显示文字]]Obsidian 用户首选ConvertToMarkdown转成标准文字Joplin 用户推荐KeepOriginal保留onenote://原样Remove删掉链接只留文字③ 图片和附件放哪ResourceFolderLocationRootFolder所有资源集中存到导出根目录的resources文件夹适合大量图片的场景PageParentFolder资源放在各自 Markdown 文件旁边单文件自包含再加一个AddFrontMatterHeader开启后每页自动生成带标题和创建、修改时间的 YAML 头方便 Obsidian 检索{ ProcessingOfPageHierarchy: HierarchyAsFolderTree, OneNoteLinksHandling: ConvertToWikilink, ResourceFolderLocation: RootFolder, AddFrontMatterHeader: true, PanDocMarkdownFormat: gfm }一个真实场景把1200篇团队笔记批量迁到 Obsidian 假设你们团队要把项目文档笔记本整体搬到 Obsidian还要照顾到以后定期增量更新先跑一次完整导出ConvertToWikilink保证双链可用用批处理脚本把多个笔记本串起来实现无人值守echo off for %%i in (项目文档 会议记录 客户资料) do ( echo 正在导出笔记本%%i OneNoteMdExporter.exe --notebook %%i --format 1 --no-input )日常新增内容后重新对单个笔记本执行同一命令即可覆盖导出配合--ignore-errors即使个别页面有问题也不会中断整批任务。导出完成记得抽查文件夹层级是否与原笔记本一致、页面数量是否对得上、图片引用是否是相对路径。三个高频报错与最快解法 报错一System.Runtime.InteropServices.COMException通常是本机 OneNote/Office 安装有问题。最快的办法是重装 Office如果不想折腾可以在 OneNote 里用文件→导出→OneNote 包把笔记本存成.onepkg换一台干净的电脑导入后再导一次详细步骤见doc/notebook-onepkg-export.md。报错二导出后图片丢失或损坏八成是笔记本没有完整同步到本地。去 OneNote 的文件→选项→同步里勾选下载所有文件和图像强制同步后重新导出。报错三提示 pandoc.exe 找不到回到第 2 步确认压缩包已经解压、exe 确实在pandoc/目录下。另外工具和 OneNote 都要以普通权限启动不要用管理员身份跑。效果到底行不行两张表说明问题 先看和传统 ENEX 迁移路线的对比详见doc/migration-to-joplin.md能力onenote-md-exporterEvernote 导出(ENEX)分区层级✅ 转成子笔记本 被压平成标签分区内页面顺序✅ 完整保留 全部并成一册页面父子层级✅ 文件夹或标题前缀 丢失附件位置✅ 留在原文位置 全挪到页尾再看常见内容类型的支持情况内容类型转换结果文本、图片、普通表格✅ 完整保留复杂表格、字体/背景色✅ 以 HTML 形式保留任务标签✅ 转成- [ ]勾选框手绘涂鸦 压平为图片手写文字 不支持架构上也值得说一句它先通过 Interop API 把页面转成 DocX再用 Pandoc 翻译成 Markdown最后跑一遍正则后处理修复空行、多余引用块等小瑕疵全程不依赖微软云服务。Joplin 迁移的完整流程可以看doc/migration-to-joplin.md。想贡献或深入了解入口都在这 翻译多语言src/OneNoteMdExporter/Resources/下已有中、英、法、西四个语言文件照着trad.en.json翻译一份提交即可新增导出格式或设置项doc/contribute.md写清了从ExportServiceBase继承实现的路子发布流程与测试样例仓库内的TestNotebook.onepkg和sample/目录可以直接拿来练手工具本身遵循 GPL-3.0 协议免费开源无任何使用费用。如果你手里正好有一本攒了多年的 OneNote 笔记本现在就是动手的最佳时机先跑通一个小测试本熟悉层级和链接的配置手感再挑最重要的笔记本正式迁移。一次导出换来的是完全属于你、随时可读、随处可搬的 Markdown 知识库——这个投入值得现在就开始。【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考