2026/9/19 2:57:23

Markdown编辑器实战:语法、图片路径与VS Code插件全攻略

Markdown编辑器实战:语法、图片路径与VS Code插件全攻略 我最早接触 Markdown就是从欢迎使用 Markdown 编辑器这行字开始的那时候打开 Typora 新建文件自动就会带这么一句。很多人看了也就看了接着往下写正文实际上这是一个挺典型的误区——大多数人盯着一堆语法说明看半天却根本没搞明白Markdown 编辑器这几个字里面哪个词才是重点。你真正需要关注的不是 Markdown 本身而是你手上那款编辑器到底把 Markdown 的体验做到了什么程度。同样的 .md 文件在记事本里打开就是一坨带井号的纯文本在 Typora 里打开就是排版干净的文档放到 VS Code 里又能变成带实时预览、目录大纲、Mermaid 图表的工作台差别非常大。这篇内容我打算从编辑器选型开始聊把核心语法、图片路径、表格操作、数学公式这些高频问题一次讲透最后再把我踩过的坑整理成一份排查表。无论你是刚接触 Markdown 的纯新手还是已经写了很久但老在某个细节上卡壳的老手这篇都能给你点实际能用的东西。1. 选对工具Markdown 编辑器到底怎么挑1.1 别只看支持 Markdown要看它支持到什么程度市面上标榜支持 Markdown的编辑器太多但实际体验天差地别。关键区别在于你是写源码还是直接排版。所谓写源码就是左边是 Markdown 标记语言右边是渲染后的预览效果两个窗口左右分栏。这种模式以 VS Code、Obsidian 为代表。它的好处是你能清楚地看到语法结构哪些地方是加粗、哪些是标题、哪些是链接一目了然坏处是初次上手会有点分裂尤其视觉敏感的人会觉得我到底在看哪边。所谓直接排版就是 Typora 这种所见即所得模式。你在编辑区直接看到最终效果加粗就是加粗标题就是标题完全不需要脑补。这种模式对新手极其友好也是我推荐纯新手第一选择。从实际操作角度讲我建议你至少准备两款编辑器配合使用一款负责日常写作兼顾沉浸感和美观度Typora 或者 Obsidian 都可以另一款负责批量处理和代码块场景那就是 VS Code。真实场景中你会发现写技术文档时离不开 VS Code 的插件生态写长文时又希望界面干净一点两者切换着用效率远比死磕一款工具高。1.2 主流编辑器横向对比与适用人群我接触过的 Markdown 编辑器不少下面这几个是实战下来值得说一说的编辑器核心特点适合人群注意点Typora所见即所得界面干净导出功能强新手、长文写作者、博客作者新版本开始收费但买断制且价格能接受VS Code 插件生态极其强大Markdown 只是其中一块程序员、技术文档写作者需要自己配插件默认预览较朴素Obsidian双链笔记鼻祖本地存储库概念知识管理重度用户、笔记党学习曲线略陡库结构需要花时间理解语雀云端协作文档结构化做得好团队协作、文档归档格式偶尔有兼容问题导出自由度一般Joplin开源免费支持端到端加密同步隐私敏感用户、跨平台需求者界面有点粗糙预览流畅度一般这里面没有绝对的好差只看你的主要场景。常写博客就去用 Typora常写代码相关的内容就老实待在 VS Code 里想做长期知识库就上 Obsidian团队共用的东西扔语雀。每个工具背后设计理念不同你非要拿 Typora 去管几百篇互相链接的笔记那肯定很难受反过来用 Obsidian 写一篇 5000 字的短文配对上双链和标签体系也属于杀鸡用牛刀。1.3 从默认模板开始的第一步配置打开新编辑器第一件事不是写正文而是先把几个关键配置搞定编辑器主题和字体选一个长时间看不累眼的方案代码字体和正文建议区分开。换行模式。这一点非常容易被忽略Markdown 的换行规则跟 Word 完全不同后面专门细讲先在设置里确认软换行和硬换行的差别。图片路径策略。是存到本地相对路径还是绝对路径决定你以后换电脑时文档里的图会不会全裂。导出格式预设。如果你经常把 Markdown 转成 Word 或 PDF提前把导出模板调好能省大量后期排版时间。我见过不少人打开编辑器第一件事就是疯狂敲# 标题然后开始写写到第 300 张图的时候才意识到图片全丢了回到最初设置去看发现根本没配置过。编辑器只是工具工具是要配合工作流去调的这一步花十分钟后面能省十小时。2. 核心语法实操这些高频细节我劝你一次搞懂2.1 Markdown 换行到底是怎么回事Markdown 换行能成为热搜词说明被这个问题坑过的人绝对不在少数。你写 Word 的时候按一下回车就是一个新段落但在 Markdown 里单个回车在渲染时会被当成一个空格不会真的换行。这里涉及 Markdown 一个非常重要的概念硬换行和软换行。软换行源码里回车了但渲染时不换行两个段落会连在一起。硬换行需要你在行尾加两个空格再回车或者中间空一行。最直观的规则是段落之间要隔一个空行。比如第一行文字 第二行文字渲染出来是同一行第一行文字 第二行文字。但如果你写成第一行文字 第二行文字中间空了一行渲染出来就是两个段落。日常写作中我推荐的方案是每个段落之间直接留一个空行不要刻意在行尾敲两个空格。这样源码可读性最好别人接手你的文件时不会看得一头雾水。少数场景需要强制换行但不换段落比如地址栏换行才用行尾两个空格的方式。还有一个坑是不同编辑器对换行的处理不一致。你在 Typora 里按 Shift Enter 是软换行在 VS Code 里这样的键位可能没有任何反应切换编辑器时经常发现排版全乱。我的建议是统一采用段落间空一行的策略不要依赖软换行来实现排版这样换工具时最不容易翻车。2.2 表格写起来别扭但用起来真香Markdown 表格是高频需求里用户最容易卡壳的部分。原生语法长这样| 列1 | 列2 | 列3 | | --- | --- | --- | | 内容A | 内容B | 内容C |第二行是分隔行必须有而且至少需要三个短横线。很多人第一次写表格漏了第二行结果整段内容全变成普通文本一渲染直接崩。但 Markdown 表格有几个硬伤你迟早会碰上不支持单元格合并。想做一个跨行跨列的表格原生语法做不到。不支持列宽控制。表格宽度完全由内容决定想居中调整很麻烦。复杂的嵌套内容放不进去。一个单元格里想塞列表或代码块原生语法做不到。我的应对方案有两个第一写表格时规律化。每一列的内容长度相近源码看上去整齐渲染效果也会好很多。如果觉得手敲对齐太累直接搜索Markdown 表格生成器在线工具一堆把 Excel 里的数据粘贴进去就能生成格式。纯手写很容易漏列尤其是列数多的表格千万不要靠肉眼一直对竖线。第二需要复杂表格时直接换思路。如果你需要合并单元格、多级表头别再死磕 Markdown直接嵌入 HTML 的table标签进去。Markdown 是支持内嵌 HTML 的虽然会让源码显得不那么纯正但能解决实际问题这比保持所谓语法纯粹重要得多。markdown 表格转换 excel这个热搜词也说明一个反向需求有时候表格已经写在了 Markdown 里但需要拿到 Excel 里去处理。最直接的操作是把渲染后的表格从网页或编辑器里复制出来粘贴到 Excel 里因为渲染后的表格本质已经是 HTML 结构Excel 能识别。如果编辑器里的表格还没渲染就先预览渲染之后再复制直接复制纯文本格式的表格进 Excel大概率会全部挤进一列。2.3 超链接和图片标签写法和路径都得注意Markdown 的超链接和图片语法长得非常像区别只在于图片前面多了一个感叹号。新手看着像写起来也容易混淆这里拆开说链接写法[点击跳转到百度](https://www.baidu.com)图片写法![替代文字](图片路径)替代文字不是摆设当图片加载失败时替代文字就会显示出来而且无障碍阅读工具依赖它来描述图片内容。千万别偷懒省略。markdown 超链接标签和图片标签这个热搜词背后很多人卡的是为什么我写了图片语法却不显示图片——多半就是路径写错了。图片路径分三种情况相对路径![图](./images/1.png)图片相对于当前 md 文件的位置。绝对路径![图](/Users/abc/images/1.png)从系统根目录开始写。云端 URL![图](https://xxx.com/1.png)图片存在网上。日常写文档我推荐相对路径为主。原因很简单Markdown 文件配合一个 images 文件夹是一个完整的整体压缩打包、换电脑、上传到 GitHub 都不容易出问题。绝对路径的问题在于每个人的机器目录结构不同你写死了一个/Users/你的用户名/...别人拿到这份文件就在他电脑上看不到图。但相对路径也有坑就是相对是相对于当前 md 文件所在目录。你用 Typora 新建文件图片保存位置设置不对就会默认存到一个乱七八糟的路径里去。我的做法是在项目开始时先确定好层级结构docs/ ├── 文章.md └── images/ └── 配图.png文章里统一写![配图](./images/配图.png)不管之后把这个文档移到哪里只要 images 文件夹和文章保持相对关系不变图片就不会裂。这一点特别重要我建议你设好一次就不要再随意改动否则文件一多改路径能改到怀疑人生。2.4 数学公式从抄公式到能看懂再写Markdown 的数学公式也是一个高频搜索场景。原生 Markdown 不支持公式渲染但很多编辑器都内置了 LaTeX 数学公式支持Typora、VS Code、Jupyter Notebook、Obsidian 都可以。写法上有两类行内公式用一个美元符号包裹如$a^2 b^2 c^2$。块级公式用两个美元符号包裹公式独占一行并居中显示$$ \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$写数学公式最大的坎不在于语法而在于符号熟不熟。常见的上标^、下标_、分式\frac{分子}{分母}、根号\sqrt{}、希腊字母\alpha、\beta这些记牢了大部分公式就够用了。我写公式时的习惯是先写结构再填符号。比如一个分式先把\frac{}{}整体写好再把分子分母分别填进去别写一个分式就开始纠结里面的内容。公式长了之后最容易出问题的是花括号配对漏一个括号整段渲染失败排查时从外层往内层看一对一对地找。Jupyter Notebook 里的 Markdown 目录生成也常和公式一起出现后面单独讲。3. 进阶实操VS Code Markdown 插件的黄金组合3.1 插件装对了VS Code 才是神级 Markdown 编辑器vscode markdown 插件和markdown all in one 插件下载这两个热搜词背后是同一个诉求VS Code 原生的 Markdown 预览太朴素功能太基础不加东西根本没法用。我用了两年多最后稳定在下面这一套插件组合上插件名作用必装程度Markdown All in One自动补全、格式化表格、生成目录、快捷键必装Markdown Preview Enhanced增强预览支持图表、导出 PDF/HTML强烈推荐markdownlint语法检查强迫你保持排版规范强烈推荐Markdown Emoji在 Markdown 里输入 emoji 快捷方式看需求Paste Image截图后直接粘贴到当前目录并自动生成图片引用强烈推荐Markdown All in One 最核心的功能是自动生成目录。在 VS Code 里打开命令面板输入Create Table of Contents插件会自动扫描全文的标题结构在光标处生成一个目录列表。如果后续需要更新目录再执行一次Update Table of Contents就行。这个功能对长文写作者来说节省的时间远比你想象的多手敲目录加锚点链接又慢又容易错。Markdown Preview Enhanced 就更值得展开说了。它内置了 Mermaid 图表支持和数学公式渲染配合预览时的滚动同步体验基本能追上 Typora。它最亮的功能是导出——不但能导出标准 HTML还能导出 PDF、PNG 等格式。能把 Mermaid 图画出来再一键导出 PDF 放进周报里比截屏清晰太多了。3.2 Markdown Preview Mermaid 支持与快捷键markdown preview mermaid support 预览 快捷键这个词组说明用户碰到了具体问题装了 Markdown Preview Enhanced但发现 Mermaid 图画不出来。前提条件是你的 Markdown 文件中用对了代码块语法。Mermaid 在 Markdown 里的写法是mermaid graph TD; A--B; A--C; B--D; C--D;注意这里的 \\\ 是三个反引号不是单引号也不是三个单引号。很多人复制教程里的代码时引号被转成了弯引号结果渲染不出来内心还以为是插件的锅。 如果语法正确但预览还是空白排查顺序是这样的 1. 确认 Markdown Preview Enhanced 是最新版本旧版 Mermaid 支持有 bug。 2. 确认代码块语言标记写的是 mermaid一个字母都不能错。写成 Mermaid 或者 mer 都不行。 3. 检查 mermaid 语法本身是否文本合法。Mermaid 报错时往往整个图都是空白和 Markdown 本身的问题表现不一样。 快捷键方面VS Code 里最常用的几个 - Ctrl Shift V打开预览 - Ctrl K 然后松手按 V侧边打开预览和编辑区并排显示 - 在 Markdown Preview Enhanced 中Ctrl Shift S 打开导出菜单 我个人的操作习惯是编辑区写正文侧边开预览一边写一边刷新看效果。这比写作时完全沉浸、写完再集中检查要更容易定位问题。 ### 3.3 集成终端里的编辑器运行器和代码块执行 有些用户搜skill编辑器和运行或者编译器和编辑器的区别其实是把 Markdown 编辑器当成代码编辑器用了。这里得先把概念说清楚 - 编译器Compiler把高级语言代码转换成机器码或字节码是一个翻译过程。 - 编辑器Editor让你编辑文本的地方它本身不具备编译能力。 - 运行时Runtime负责执行代码的环境。 Markdown 只是一个标记语言不需要编译它靠渲染器把标记语言转成 HTML。所以你在 VS Code 里写的 .md 文件本质上是一个纯文本能实时预览是因为渲染器在后台干活。 如果你想在 Markdown 文件里执行代码块比如你写技术文章想验证代码块里的 Python 代码能不能跑VS Code 本身不直接支持但可以装 Code Runner 这个插件实现。它的逻辑是帮你调用系统里的对应解释器执行代码输出显示在输出面板。这个功能对写技术教程的人来说价值很高写完代码块顺手一跑验证通过再发出去能省掉很多后续纠正的麻烦。 ## 4. 图片不显示Markdown 图片路径终极排查指南 ### 4.1 图片路径问题为什么这么普遍 md编辑器、markdown图片路径、编辑器添加图片不显示jshtml编辑器添加图片不显示……这些热搜词集中反映了一个现象图片路径问题是 Markdown 使用中第二高发的痛点仅次于换行问题。 图片问题的本质是图片不像文字那样存在 .md 文件里它存在于某个路径Markdown 只记录了去哪个路径找这张图的信息。只要这个路径失效图就裂了。 路径失效的原因有以下几种 结合我自己的实操经验最常见的一条是**相对路径基准弄错了**。你以为相对路径是相对当前工作目录但很多编辑器实际是相对当前 md 文件所在目录。比如你用绝对定位操作把一个图放在了 /docs/images/1.png然后在 /docs/sub/ 目录下写了一篇文章引用 ./images/1.png实际指向的是 /docs/sub/images/1.png而文件不在那里自然就显示不出来。 第二常见的原因是**文件名大小写问题**。Windows 下 1.PNG 和 1.png 能正常打开不区分大小写但在 Linux、macOS 环境或 GitHub 上大小写敏感路径写错一个字母就裂了。我当时就是被这个坑到Windows 上写得好好的文档传到服务器上所有图片全部裂掉排查了半小时发现只是大小写不一致。 第三常见的是**特殊字符问题**。文件名里带空格、中文、括号、井号的在引用时容易出错。Markdown 对空格处理不严格但某些渲染器会转义出问题。最稳的方案是图片文件名统一使用英文小写字母、数字、短横线不要用空格和中文。 ### 4.2 六步定位图片消失的根源 遇到图片不显示按下面的顺序排查基本能快速定位 1. **先看预览里有没有替代文字**。如果页面显示的是你在方括号里写的文字说明图片加载失败路径有问题。 2. **右键点击裂开的图片选择在新标签页打开图片**。如果可以正常打开说明图片本身没问题是预览器缓存问题如果打不开说明路径确实写错了。 3. **检查图片文件是否真实存在于目标路径**。打开系统文件管理器沿着路径一层层找看文件在不在。 4. **检查路径格式是否匹配当前编辑器**。Typora 偏好相对路径VS Code 也用相对路径但两者对 ./ 和绝对路径的处理逻辑略有差别对照编辑器设置确认。 5. **检查文件扩展名是否一致**。确认是 .png 还是 .PNG是 .jpg 还是 .jpeg一字不差才行。 6. **关闭再重新打开预览**。有些渲染器缓存很顽固改完路径不刷新还显示旧结果重启预览窗口常常能解决。 ### 4.3 避免图片问题的三个习惯 排查很重要但更重要的是从一开始就不要制造问题。我给大家分享三个我这几年坚持下来的习惯 第一**一个项目一个 images 目录**。在项目根目录建一个 images 文件夹所有文章的图片都按文章名建子文件夹管理不要在文档目录的深层随机散落图片。这样做的好处是整体移动项目时相对路径依然有效配合 Git 管理也好追踪。 第二**统一用相对路径不写绝对路径**。哪怕你的机器只属于自己一个人也别用绝对路径。一旦文档被分享到 GitHub 或发给别人绝对路径就废了。相对路径保证文档 依赖文件打包即走独立可用。 第三**用 Paste Image 插件自动管理路径**。开启 Paste Image 插件后截图直接 Ctrl V 即可插件自动把图片存到指定目录并自动生成符合相对路径的引用文本。你只需要事先设置好图片存放目录的根路径之后的流程完全自动化。这一步直接把图片问题的发生率降一个数量级我再也没有手写过图片引用的路径。 ## 5. 拓展玩法从 Markdown 到 Word、Excel、HTML 的转换工作流 ### 5.1 Markdown 转 Word 的实践方案 markdown转word工作流这个词组出现在热搜里说明大家的需求已经从学会 Markdown升级到用 Markdown 融入现有工作流段位了。很多公司/学校的正式文件还是 Word 格式为主Markdown 写起来舒服交付时却得转成 Word。 我的转换方案分两级 **初级方案免费快速**用 Typora 或 Markdown Preview Enhanced 直接导出 Word 格式。Typora 的导出功能在文件菜单里选择导出 - Word.docx即可。它底层用的是 Pandoc 转换引擎所以效果相对稳定。此方案优点是零配置、速度快缺点是格式控制有限样式不够灵活。 **进阶方案排版可控**Pandoc 是一个万能文档转换工具命令行操作能把 Markdown 转成 Word、PDF、HTML、epub 等。转 Word 时可以指定一个 reference.docx 参考模板里面定义好了标题样式、正文字体、行距、页边距等Pandoc 会根据模板套格式。这种方式比较适合需要严格遵循某单位排版规范的情况但需要先做一个模板初次搭建成本略高。 我实测下来日常写技术文档、交付给不是技术人员的同事看Typora 直接导出已经完全够用如果需要提交正式文件、论文或者有严格样式要求的文档才值得去折腾 Pandoc 模板。 ### 5.2 Markdown 表格转 Excel反向操作的两种方法 刚才说了从 Excel 到 Markdown 的方向用在线工具生成现在说反向操作——从 Markdown 表格到 Excel。 方法一**渲染后复制粘贴**。在编辑器的预览模式中选中整个表格复制然后粘贴到 Excel 里。因为渲染后的表格是 HTML 结构Excel 能识别它的行列关系粘贴进去直接就是规整的表格。这种方法最稳定我一直在用。 方法二**CSV 中转**。表格用在线转换工具转成 CSV 格式然后通过 Excel 的文件菜单导入。这种方法适合表格数据需要后续自动化处理的情况因为 CSV 是纯文本格式工具链支持度高。 有人会问为什么不直接复制源码粘贴到 Excel因为 Excel 不认识竖线会把整行内容塞进同一个单元格这不是 Excel 的功能限制而是操作方式不正确。看起来是个小问题但踩过坑的人应该都知道那种数据挤在一列的绝望感。 ### 5.3 Jupyter Notebook 里玩 Markdown目录生成与文档化输出 jupyter notebook怎么生成markdown目录语法这个热搜词说明不少数据分析和科研场景的用户看 Jupyter Notebook 的方式也升级了不仅仅满足于在这里面写运行代码。 Jupyter Notebook 的 Markdown 单元支持标题结构但不原生支持自动目录。实测好用的方案有两个 一是在 Notebook 顶部插入一个 Markdown 单元手动用相对链接方式写目录。写法是把标题的文本形式做成锚点链接。比如标题是## 数据分析那么目录项就是 [数据分析](#数据分析)点击即可跳转。注意 GitHub 上的锚点规则和 Jupyter 内置渲染的规则略有差异但中文标题保持完整的大小写和空格处理基本都没问题。 二是用 nbconvert 导出时配合 toc2 扩展自动生成目录。具体是在命令行中执行 bash jupyter nbconvert --to html --template toc2 你的文件.ipynb这个方案生成的是带有侧边目录的 HTML 页面适合作为交付报告使用。如果你的 Jupyter 环境是较新版本可能已经预置了 toc2直接试一下即可。Jupyter Notebook 里的 Markdown 渲染相比独立编辑器数学公式支持和 Mermaid 图表演示都完整配合交互式代码块是数据分析场景里承载思路 代码 结论的最佳载体之一。用好它的 Markdown 能力报告可读性会明显上一个档次。6. 高频问题排查实录与避坑建议6.1 常见问题速查表把近几年高频出现的问题和对应解法汇总成速查表遇到问题直接对号入座问题典型原因解决方案换行不生效文字全部连在一起段落间没有空行段落之间隔一个空行或行尾加两个空格再回车表格渲染失败显示成一堆竖线缺少第二行| --- |分隔行补全分隔行或使用在线表格生成器图片显示裂开路径错误/文件名大小写不一致按第 4 节的六步排查法定位预览里图片缓存不刷新渲染器缓存机制重启预览窗口或强制刷新数学公式显示为源代码语法不对或编辑器不支持检查美元符号是否闭合确认编辑器支持 LaTeXMermaid 图不显示代码块语言标记错误或公式语法错误确认是 mermaid并检查 Mermaid 语法导出 Word 格式错乱模板缺失或样式映射问题用 Pandoc 加 reference.docx 模板控制格式本地组策略编辑器打不开这是 Windows 功能限制不是 Markdown 问题按系统版本启用或使用替代方案JDoodle 等在线编辑器不支持中文渲染部分在线编辑器语言显示问题复制到本地编辑器测试排除环境问题6.2 markdownlint 让我避免的排版事故markdownlint 是 VS Code 的一个语法检查插件很多人觉得它啰嗦但我认为它在关键时候能救命。举一个真实出过问题的场景有次写文档一个列表项后面少缩进了几个空格渲染器把它解释成了和上级列表同一层级最终目录结构全乱。当时文件很大有几十个列表根本不可能用肉眼一眼找出来markdownlint 直接黄线标出了问题行三秒钟定位解决。它还有一个我很依赖的规则MD013 - line length。默认配置会提示单行超过 80 字符如果你写的是中文这个规则的阈值通常需要调大否则屏幕上全是黄色波浪线看着心烦。在 settings.json 里加上配置即可{ markdownlint.config: { MD013: { line_length: 120 } } }把长度限制调到 120 之后基本就能兼顾多种场景了。如果你平时不太在意代码行长度甚至可以直接设为false关闭这个规则。毕竟规则是辅助不是限制你觉得碍事了就调整它而不是让它在你的文档里产生大量噪音。6.3 三个让我少走弯路的实操心得最后分享三个不断踩坑、总结、沉淀下来的心得。心得一Markdown 源码本身才是你真正的资产。很多人过度追求所见即所得依赖编辑器渲染效果。但如果编辑器不在了或者你想从 A 编辑器迁移到 B 编辑器你的 .md 文件本身是否干净规范直接决定了迁移的顺利程度。我见过朋友用某些国产笔记软件写了两年笔记导出来的时候格式全乱他的 Markdown 源码里充满了复杂的自定义格式标记别的工具根本解析不了。我的建议是写的时候想着我在写纯文本而不是我在排版。心得二图片管理永远是最该提前规划的事。文字丢了可以重新打图片丢了就真的没了。我建议你在正式开工前花五分钟设置编辑器图片保存路径并规定文章配图统一放哪。要用插件自动处理不要手动粘贴和重命名图片。这不是洁癖这是为自己未来的文档完整性做保障。心得三工具选型不用追求完美一套顺手就写。当年我为了选编辑器浪费了整整一个周末在各种工具之间横跳最后发现哪款都没写出多少内容。现在我固定用一套方案Typora 和 VS Code 为主Obsidian 做长期知识库在线工具偶尔应急。这套组合能覆盖我 99% 的场景剩余 1% 的临时需求临时找方案就行。写 Markdown 这件事核心从来不是用什么编辑器而是让文字的结构和逻辑通过轻量标记清晰呈现。你要做的是选一款趁手的编辑器把几个高频语法和路径规则搞懂然后安心写内容剩下的交给工具去处理。希望这篇实操笔记能帮你少踩几个坑。