<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>https://blog.cn3.top/</id>
  <title type="text">CC 的 Blog</title>
  <subtitle type="text">嘻嘻</subtitle>
  <updated>2026-11-04T00:00:00.000Z</updated>
  <author><name>CC</name></author>
  <link rel="alternate" href="https://blog.cn3.top/"/>
  <link rel="self" href="https://blog.cn3.top/atom.xml"/>
  <generator uri="https://github.com/CuteLeaf/Firefly">Firefly v6.16.9</generator>
    <entry>
      <id>https://blog.cn3.top/blog/posts/pin/</id>
      <title type="text">加群向导</title>
      <published>2026-07-01T00:00:00.000Z</published>
      <updated>2026-07-04T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/pin/"/>
      <summary type="text">加群向导</summary>
      <content type="html"><![CDATA[<section><h2>QQ 群<a href="#qq-群"><span>#</span></a></h2><section><h3>泰拉瑞亚游戏联机群 <code>576081743</code><a href="#泰拉瑞亚游戏联机群-576081743"><span>#</span></a></h3><p><a href="/blog/posts/terraria/">服务器信息</a></p>
展开二维码<p><img alt="" loading="lazy" width="1284" height="2283" src="/blog/_astro/terraria-1782667476591.DfE2qr98_Z2uSIKf.webp" /></p></section><section><h3>异星工场游戏联机群 <code>809497003</code><a href="#异星工场游戏联机群-809497003"><span>#</span></a></h3><p><a href="/blog/posts/factorio/">服务器信息</a></p>
展开二维码<p><img alt="" loading="lazy" width="1284" height="2283" src="/blog/_astro/factorio-1782667458861.Bgv3nGs3_mDb6e.webp" /></p></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/firefly/</id>
      <title type="text">Firefly 一款清新美观的 Astro 博客主题模板</title>
      <published>1970-01-02T00:00:00.000Z</published>
      <updated>1970-01-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/firefly/"/>
      <summary type="text">Firefly 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板，专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈，提供了丰富的功能模块和高度可定制的界面，让您能够轻松打造出专业且美观的个人博客网站。</summary>
      <content type="html"><![CDATA[<section><h2>🌟 项目概述<a href="#-项目概述"><span>#</span></a></h2><p><strong>Firefly</strong> 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板，专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈，提供了丰富的功能模块和高度可定制的界面，让您能够轻松打造出专业且美观的个人博客网站。</p><p><strong>🖥️在线预览： <a href="https://firefly.cuteleaf.cn/" target="_blank">Firefly - Demo site</a></strong></p><p><strong>📝Firefly使用文档： <a href="https://docs-firefly.cuteleaf.cn/" target="_blank">https://docs-firefly.cuteleaf.cn</a></strong></p><p><strong>⭐Firefly开源地址：<a href="https://github.com/CuteLeaf/Firefly" target="_blank">https://github.com/CuteLeaf/Firefly</a></strong></p><p><strong>⭐Fuwari开源地址：<a href="https://github.com/saicaca/fuwari" target="_blank">https://github.com/saicaca/fuwari</a></strong></p><a href="https://github.com/CuteLeaf/Firefly" target="_blank"><div><div><div><div></div><div>CuteLeaf</div></div><div>/</div><div>Firefly</div></div><div></div></div><div>🍀Firefly, fresh and aesthetic Astro blog theme template. </div><div><div>—</div><div>—</div><div>MIT</div><span>Astro</span></div></a><a href="https://github.com/saicaca/fuwari" target="_blank"><div><div><div><div></div><div>saicaca</div></div><div>/</div><div>fuwari</div></div><div></div></div><div>✨A static blog template built with Astro. </div><div><div>—</div><div>—</div><div>MIT</div><span>Astro</span></div></a><p></p><figure><img alt="Firefly" loading="lazy" width="2192" height="1233" src="/blog/_astro/1.BQ4-k1kz_Z13exkp.webp" /><figcaption>Firefly</figcaption></figure><p></p></section>
<section><h2>🚀 技术架构<a href="#-技术架构"><span>#</span></a></h2><ul>
<li><strong>静态站点生成</strong>: 基于 Astro ，提供极快的加载速度和优秀的 SEO 优化</li>
<li><strong>TypeScript 支持</strong>: 完整的类型安全，提升开发体验和代码质量</li>
<li><strong>响应式设计</strong>: 使用 Tailwind CSS 构建，完美适配桌面端和移动端</li>
<li><strong>组件化开发</strong>: 支持 Astro、Svelte 组件，灵活可扩展</li>
</ul></section>
<section><h2>📖 配置说明<a href="#-配置说明"><span>#</span></a></h2><blockquote><p>📚 <strong>详细配置文档</strong>: 查看 <a href="https://docs-firefly.cuteleaf.cn/" target="_blank">Firefly 使用文档</a> 获取完整的配置指南</p></blockquote></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/guide/</id>
      <title type="text">Firefly 简单使用指南</title>
      <published>1970-01-02T00:00:00.000Z</published>
      <updated>1970-01-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/guide/"/>
      <summary type="text">如何使用 Firefly 博客模板。</summary>
      <content type="html"><![CDATA[<p>这个博客模板是基于 <a href="https://astro.build/" target="_blank">Astro</a> 构建的。对于本指南中未提及的内容，您可以在 <a href="https://docs.astro.build/" target="_blank">Astro 文档</a> 中找到答案。</p>
<section><h2>文章的 Front-matter<a href="#文章的-front-matter"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>---</span></div></div><div><div><div>2</div></div><div><span>title</span><span>: </span><span>我的第一篇博客文章</span></div></div><div><div><div>3</div></div><div><span>published</span><span>: </span><span>2023-09-09</span></div></div><div><div><div>4</div></div><div><span>description</span><span>: </span><span>这是我新 Astro 博客的第一篇文章。</span></div></div><div><div><div>5</div></div><div><span>image</span><span>: </span><span>./cover.jpg</span></div></div><div><div><div>6</div></div><div><span>tags</span><span>: [</span><span>前端</span><span>, </span><span>开发</span><span>]</span></div></div><div><div><div>7</div></div><div><span>category</span><span>: </span><span>前端开发</span></div></div><div><div><div>8</div></div><div><span>draft</span><span>: </span><span>false</span></div></div><div><div><div>9</div></div><div><span>---</span></div></div></code></pre><div><div></div><div></div></div></figure></div>

<table><thead><tr><th>属性</th><th>描述</th></tr></thead><tbody><tr><td><code>title</code></td><td>文章标题。</td></tr><tr><td><code>published</code></td><td>文章发布日期。</td></tr><tr><td><code>updated</code></td><td>文章更新日期。如果未设置，将默认使用发布日期。</td></tr><tr><td><code>pinned</code></td><td>是否将此文章置顶在文章列表顶部。</td></tr><tr><td><code>description</code></td><td>文章的简短描述。显示在首页上。</td></tr><tr><td><code>image</code></td><td>文章封面图片路径。<br />1. 以 <code>http://</code> 或 <code>https://</code> 开头：使用网络图片<br />2. 以 <code>/</code> 开头：<code>public</code> 目录中的图片<br />3. 不带任何前缀：相对于 markdown 文件的路径</td></tr><tr><td><code>tags</code></td><td>文章标签。</td></tr><tr><td><code>category</code></td><td>文章分类。</td></tr><tr><td><code>lang</code></td><td>文章语言代码（如 <code>zh-CN</code>）。仅当文章语言与站点默认语言不同时设置。</td></tr><tr><td><code>licenseName</code></td><td>文章内容的许可证名称。</td></tr><tr><td><code>licenseUrl</code></td><td>文章内容的许可证链接。</td></tr><tr><td><code>author</code></td><td>文章作者。</td></tr><tr><td><code>sourceLink</code></td><td>文章内容的来源链接或参考。</td></tr><tr><td><code>draft</code></td><td>如果这篇文章仍是草稿，则不会显示。</td></tr><tr><td><code>comment</code></td><td>是否启用此文章的评论功能。默认为 <code>true</code>。</td></tr><tr><td><code>slug</code></td><td>自定义文章 URL 路径。如果不设置，将使用文件名作为 URL。</td></tr><tr><td><code>password</code></td><td>文章密码。设置后文章内容将被 AES-256-GCM 加密，访客需输入密码才能查看。</td></tr><tr><td><code>passwordHint</code></td><td>密码提示。显示在密码输入框上方，帮助访客回忆密码，也可以不加。</td></tr></tbody></table></section>
<section><h2>文章文件的放置位置<a href="#文章文件的放置位置"><span>#</span></a></h2><p>您的文章文件应放置在 <code>src/content/posts/</code> 目录中。您也可以创建子目录来更好地组织您的文章和资源。</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>src/content/posts/</span></div></div><div><div><div>2</div></div><div><span>├── post-1.md</span></div></div><div><div><div>3</div></div><div><span>└── post-2/</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>├── cover.png</span></div></div><div><div><div>5</div></div><div><span><span>    </span></span><span>└── index.md</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>自定义文章 URL (Slug)<a href="#自定义文章-url-slug"><span>#</span></a></h2><section><h3>什么是 Slug？<a href="#什么是-slug"><span>#</span></a></h3><p>Slug 是文章 URL 路径的自定义部分。如果不设置 slug，系统将使用文件名作为 URL。</p></section><section><h3>Slug 使用示例<a href="#slug-使用示例"><span>#</span></a></h3><section><h4>示例 1：使用文件名作为 URL<a href="#示例-1使用文件名作为-url"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>---</span></div></div><div><div><div>2</div></div><div><span>title</span><span>: </span><span>我的第一篇博客文章</span></div></div><div><div><div>3</div></div><div><span>published</span><span>: </span><span>2023-09-09</span></div></div><div><div><div>4</div></div><div><span>---</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>文件：<code>src/content/posts/my-first-blog-post.md</code></p><p>URL：<code>/posts/my-first-blog-post</code></p></section><section><h4>示例 2：自定义 Slug<a href="#示例-2自定义-slug"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>---</span></div></div><div><div><div>2</div></div><div><span>title</span><span>: </span><span>我的第一篇博客文章</span></div></div><div><div><div>3</div></div><div><span>published</span><span>: </span><span>2023-09-09</span></div></div><div><div><div>4</div></div><div><span>slug</span><span>: </span><span>hello-world</span></div></div><div><div><div>5</div></div><div><span>---</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>文件：<code>src/content/posts/my-first-blog-post.md</code></p><p>URL：<code>/posts/hello-world</code></p></section><section><h4>示例 3：其他语言文件名使用Slug<a href="#示例-3其他语言文件名使用slug"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>---</span></div></div><div><div><div>2</div></div><div><span>title</span><span>: </span><span>如何使用 Firefly 博客主题</span></div></div><div><div><div>3</div></div><div><span>published</span><span>: </span><span>2023-09-09</span></div></div><div><div><div>4</div></div><div><span>slug</span><span>: </span><span>how-to-use-firefly-blog-theme</span></div></div><div><div><div>5</div></div><div><span>---</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>文件：<code>src/content/posts/如何使用Firefly博客主题.md</code></p><p>URL：<code>/posts/how-to-use-firefly-blog-theme</code></p></section></section><section><h3>Slug 使用建议<a href="#slug-使用建议"><span>#</span></a></h3><ol>
<li><strong>使用英文和连字符</strong>：<code>my-awesome-post</code> 而不是 <code>my awesome post</code></li>
<li><strong>保持简洁</strong>：避免过长的 slug</li>
<li><strong>具有描述性</strong>：让 URL 能够反映文章内容</li>
<li><strong>避免特殊字符</strong>：只使用字母、数字和连字符</li>
<li><strong>保持一致性</strong>：在整个博客中使用相似的命名模式</li>
</ol></section><section><h3>注意事项<a href="#注意事项"><span>#</span></a></h3><ul>
<li>Slug 一旦设置并发布，建议不要随意更改，以免影响 SEO 和已存在的链接</li>
<li>如果多个文章使用相同的 slug，后面的文章会覆盖前面的</li>
<li>Slug 会自动转换为小写</li>
</ul></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/self-host-email-server/</id>
      <title type="text">自建能够QQ提醒的邮件服务器</title>
      <published>2026-08-03T00:00:00.000Z</published>
      <updated>2026-11-04T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/self-host-email-server/"/>
      <summary type="text">即时通知邮件消息,再也不用去垃圾箱翻验证码了</summary>
      <content type="html"><![CDATA[<section><h2>前言<a href="#前言"><span>#</span></a></h2><p>你手里有几个邮箱？我有七八个，被这事儿整整折磨了半年。</p><p>企业邮箱对接工作、QQ 邮箱收验证码、Outlook 处理海外邮件，还有 163 邮箱和我自己的域名邮箱，用途拆得越细，管起来越乱。更离谱的是：上班盯钉钉飞书，下班刷微信 QQ，全天挂着即时通讯软件，偏偏邮箱通知永远被晾在一边，半天想不起来看。</p><p>每天挨个刷一遍 App，十几分钟就没了，提心吊胆怕漏事，翻到底大半都是垃圾邮件。最坑的是手机通知还经常延迟，上次就因为晚看了半小时合作邮件，差点把项目节点拖黄，气得我当场就想把邮箱全卸载。</p><p>忍无可忍我就横下心：与其天天被动踩坑，不如自己动手，直接把这病根拔了。思路很简单，就抓两个核心：所有邮件统一进一个入口，再用我最不会漏的渠道发强提醒。</p><p>具体分三步走：
第一步，所有邮箱全开自动转发，不管发到哪个地址的邮件，全部实时汇进我的域名邮箱，散件先归总。
第二步，部署一套 Cloud Mail 邮件服务，稳稳接住所有域名邮件。不光相当于有了无限容量的专属邮箱，平时注册陌生服务、不想泄露主邮箱怕收垃圾邮件，随手生成个别名地址就能用，垃圾邮件沾不到主号，隐私安全直接拉满。
最关键的第三步，接上插件化通知系统：邮件一入库，自动解析出发件人、标题和内容摘要，立刻推到 QQ、微信、钉钉、飞书、企业微信，也支持 Telegram。全是天天挂后台的即时通讯软件，通知优先级拉满，就算开了免打扰都能精准提醒，根本不可能漏。</p><p>现在用了快一个月，只能说爽到飞起。对方刚点完发送，我这边聊天软件直接弹窗，扫一眼就知道重不重要，验证码抬手就能复制。之前天天反复刷的邮箱 App，现在直接躺进文件夹深处，我再也没点开过。</p><p>最香的是，整套方案不用自己买服务器，Cloudflare 免费额度完全覆盖日常使用，成本直接为零。</p></section>
<section><h2>使用效果展示<a href="#使用效果展示"><span>#</span></a></h2><p>当邮件收到一封邮件时</p><p><img alt="" loading="lazy" width="1317" height="806" src="/blog/_astro/self-host-email-server-1785746626118.vhZZEY-C_Z1K6PU9.webp" /></p><p>收到了通知,带预览内容 (以 QQ 为例)</p><p><img alt="" loading="lazy" width="1035" height="907" src="/blog/_astro/self-host-email-server-1785746749696.CB0-xUJY_1qMYOh.webp" /></p><p>这样接受登录验证码非常方便,并且所有数据都保存在你自己的域名邮箱里, 非常的安全,不用担心隐私泄露</p><p>不过, 大多数人使用自己以前的邮箱 比如 QQ 邮箱,Outlook 之类的,我没有这些邮箱的域名, 能不能也能实现这个通知呢?</p><p>当然能, 只不过需要一点点设置, 我们可以前往你自己的邮箱,设置邮件转发到你自己的域名邮箱, 这样当你的邮箱收到邮件时,会转发到你的域名邮箱,然后就会有通知了</p><p>QQ 邮箱设置</p><p></p><figure><img alt="qq邮箱" loading="lazy" width="2098" height="1054" src="/blog/_astro/self-host-email-server-1785746996342.C2VdwLpw_1cwKQ0.webp" /><figcaption>qq邮箱</figcaption></figure><p></p><p>outlook 设置</p><p><img alt="" loading="lazy" width="1281" height="1076" src="/blog/_astro/self-host-email-server-1785747275131.BARJkDNu_Z1Ifdpu.webp" /></p></section>
<section><h2>部署教程准备<a href="#部署教程准备"><span>#</span></a></h2><ol>
<li>准备 <a href="https://github.com" target="_blank">Github</a> 账号, <a href="https://dash.cloudflare.com/" target="_blank">Cloudflare</a> 账号</li>
<li>登录 <a href="https://github.com" target="_blank">Github</a> , fork <a href="https://github.com/yinleren6/cloud-mail" target="_blank">这个项目</a></li>
</ol><section><h3>部署<a href="#部署"><span>#</span></a></h3><p>项目部署在 cloudflare 上对海外网络延迟低, 邮件接受也很快</p><p><a href="https://doc.skymail.ink/" target="_blank">参考原项目部署文档</a></p></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/git/</id>
      <title type="text">Git 笔记</title>
      <published>2026-07-04T00:00:00.000Z</published>
      <updated>2026-07-04T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/git/"/>
      <summary type="text">常用 git 命令</summary>
      <content type="html"><![CDATA[<section><h2>想删除不再追踪的文件<a href="#想删除不再追踪的文件"><span>#</span></a></h2><p>递归删除所有已追踪文件的 Git 缓存（核心命令）</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git rm -r --cached . `</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>重新添加所有文件（自动遵循 .gitignore 规则）</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git add . `</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>提交变更</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git commit -m "chore: 清理 .gitignore 缓存，停止追踪忽略文件"`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>覆盖最后一次提交</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git commit --amend --no-edit`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>查看详细远程地址</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git remote -v`</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>设置 ssh 连接,避免 https 连接错误<a href="#设置-ssh-连接避免-https-连接错误"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git remote set-url origin git@github.com:用户名/仓库.git`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>注意.gitconfig 文件的全局配置可能会影响 ssh 配置</p><p>配置 ssh</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`ssh-keygen -t ed25519 -C "email or 备注"`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>查看公钥</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`cat ~/.ssh/id_ed25519.pub`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>把公钥复制到 github</p><p>授权本机</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`ssh-agent bash`</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>`ssh-add ~/.ssh/id_ed25519`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>测试</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`ssh -T git@github.com`</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>git 全局设置<a href="#git-全局设置"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global user.name "用户名"`</span></div></div><div><div><div>2</div></div><div><span>`git config --global user.email "邮箱"`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>显示所有设置</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global --list`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>ssh 记住账号自动验证</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global credential.helper store`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>自动变基</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global pull.rebase true`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>添加信任目录</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global --add safe.directory '*'`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>自动转换 CRLF 为 LF（提交时）和 LF 为 CRLF（检出时）</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global core.autocrlf true`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>仅在 Windows 上转换，Linux/macOS 不转换</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global core.autocrlf input`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>禁止自动转换（适合跨平台团队统一使用 LF）</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git config --global core.autocrlf false`</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>同步上游仓库<a href="#同步上游仓库"><span>#</span></a></h2><p>添加原仓库为 upstream</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git remote add upstream https://github.com/原作者/仓库名.git`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>校验远程</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>`git remote -v`</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>日常同步</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>git</span><span> </span><span>checkout</span><span> </span><span>main或master</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span># 拉取上游全部更新</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>git</span><span> </span><span>fetch</span><span> </span><span>upstream</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span># 切换到本地主分支（main/master 看项目）</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>git</span><span> </span><span>checkout</span><span> </span><span>main</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span># 合并上游最新代码到本地</span></div></div><div><div><div>10</div></div><div>
</div></div><div><div><div>11</div></div><div><span>git</span><span> </span><span>merge</span><span> </span><span>upstream/main</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>遇到冲突 改完冲突文件后执行</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>git</span><span> </span><span>add</span><span> </span><span>.</span></div></div><div><div><div>2</div></div><div><span>git</span><span> </span><span>commit</span><span> </span><span>-m</span><span> </span><span>"合并上游更新"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/factorio/</id>
      <title type="text">Factorio</title>
      <published>2026-06-28T00:00:00.000Z</published>
      <updated>2026-07-21T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/factorio/"/>
      <summary type="text"></summary>
      <content type="html"><![CDATA[本文已加密保护，请访问网站查看。]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E6%B3%B0%E6%8B%89%E7%91%9E%E4%BA%9A%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B/</id>
      <title type="text">泰拉瑞亚服务器搭建教程</title>
      <published>2026-06-28T00:00:00.000Z</published>
      <updated>2026-07-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E6%B3%B0%E6%8B%89%E7%91%9E%E4%BA%9A%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B/"/>
      <summary type="text">泰拉瑞亚服务器搭建教程</summary>
      <content type="html"><![CDATA[<div><div><div></div><div>本教程可能已过时</div></div><div></div></div>
<section><h2>Tshock (以 Linux 版为例)<a href="#tshock-以-linux-版为例"><span>#</span></a></h2><section><h3>准备<a href="#准备"><span>#</span></a></h3><ol>
<li>
<p>下载 Tshock 服务端</p>
<blockquote><p><a href="https://github.com/Pryaxis/TShock/releases" target="_blank">Tshock 官方仓库</a><br />
<a href="https://github.com/Pryaxis/TShock/wiki" target="_blank">官方文档</a><br />
<a href="https://docs.terraria.ink/zh/guide/get-start.html" target="_blank">插件仓库</a></p></blockquote>
</li>
<li>
<p>解压,注意 zip 内嵌套的压缩包,记得全部解压</p>
</li>
</ol></section><section><h3>运行<a href="#运行"><span>#</span></a></h3><ol>
<li>找到 <code>TShock.Installer</code> , 直接运行 (注意权限),程序会自动下载 .NET 运行时</li>
<li>运行 <code>TShock.Server</code> , 可能会报错找不到 .NET, 需要设置环境变量,方法很简单, 直接在命令前面加 DOTNET_ROOT=&lt;程序目录/dotnet&gt; 即可</li>
<li>插件目录是 ServerPlugins , 配置目录是 tshock</li>
</ol></section></section>
<section><h2>Tmodloader (以 Linux 版为例)<a href="#tmodloader-以-linux-版为例"><span>#</span></a></h2><section><h3>准备<a href="#准备-1"><span>#</span></a></h3><ol>
<li>
<p>下载 Tmodloader 服务端</p>
<blockquote><p><a href="https://github.com/tModLoader/tModLoader/releases" target="_blank">Tmodloader 官方仓库</a><br />
<a href="https://github.com/tModLoader/tModLoader/wiki" target="_blank">官方文档</a><br />
<strong>模组去 Steam 创意工坊找</strong></p></blockquote>
</li>
<li>
<p>解压</p>
</li>
</ol></section><section><h3>运行<a href="#运行-1"><span>#</span></a></h3><ol>
<li>找到 <code>start-tModLoaderServer.sh</code> ,直接运行 (注意权限), 程序会自动下载 .NET 运行时</li>
<li>配置文件是 serverconfig.txt</li>
</ol></section><section><h3>添加模组<a href="#添加模组"><span>#</span></a></h3><ol>
<li>找到 Steam 里的 Tmodloader,前往创意工坊订阅你喜欢的 mod</li>
<li>启动 Steam 里的 Tmodloader ,打开模组设置,调整好你的模组设置</li>
<li>点击模组整合包,将你的模组导出为模组整合包,把这个整合包上传到服务器上的 Tmodloader</li>
</ol></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/windows-%E8%87%AA%E5%AE%9A%E4%B9%89%E8%AE%BE%E7%BD%AE%E6%8C%87%E5%8D%97/</id>
      <title type="text">(目录) Windows 自定义设置指南</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/windows-%E8%87%AA%E5%AE%9A%E4%B9%89%E8%AE%BE%E7%BD%AE%E6%8C%87%E5%8D%97/"/>
      <summary type="text">从 UAC 到注册表，从 Explorer 到命令行——一个重度 Windows 用户多年积累的配置技巧全系列。</summary>
      <content type="html"><![CDATA[<p>这个系列汇集了我多年使用 Windows 过程中积累的各种技巧、脚本和注册表修改记录。覆盖了从系统安全到效率工具的方方面面。</p>
<section><h2>文章列表<a href="#文章列表"><span>#</span></a></h2>

<table><thead><tr><th>文章</th><th>主要内容</th></tr></thead><tbody><tr><td><a href="/blog/posts/%E7%94%A8%E6%88%B7%E8%B4%A6%E6%88%B7%E6%8E%A7%E5%88%B6/">UAC 权限：理解与控制</a></td><td>UAC 等级设置、应用兼容性运行方式、右键菜单一键切换</td></tr><tr><td><a href="/blog/posts/%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8%E7%9A%84%E5%A4%9A%E7%A7%8D%E6%96%B9%E5%BC%8F/">开机自启动的多种方式</a></td><td>注册表、计划任务、服务、启动目录全解析 + 跳过 UAC</td></tr><tr><td><a href="/blog/posts/%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E5%85%B3%E8%81%94%E6%9C%BA%E5%88%B6%E8%AF%A6%E8%A7%A3/">文件类型关联机制详解</a></td><td>assoc/ftype 原理、注册表自定义文件类型</td></tr><tr><td><a href="/blog/posts/%E6%96%87%E4%BB%B6%E8%B5%84%E6%BA%90%E7%AE%A1%E7%90%86%E5%99%A8/">Explorer 深度定制</a></td><td>符号链接、映像劫持、隐藏文件夹、任务栏、CPL 命令</td></tr><tr><td><a href="/blog/posts/%E5%8F%B3%E9%94%AE%E8%8F%9C%E5%8D%95%E6%B8%85%E7%90%86%E4%B8%8E%E5%AE%9A%E5%88%B6/">右键菜单清理与定制</a></td><td>Win11 经典菜单、添加/清理/恢复右键菜单项</td></tr><tr><td><a href="/blog/posts/%E5%91%BD%E4%BB%A4%E8%A1%8C/">命令行全面参考</a></td><td>CMD 符号、变量扩展、提权、PowerShell 别名、网络命令</td></tr><tr><td><a href="/blog/posts/%E7%B3%BB%E7%BB%9F%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%9C%8D%E5%8A%A1%E4%BC%98%E5%8C%96%E6%8C%87%E5%8D%97/">系统配置与服务优化</a></td><td>服务管理、网络共享、远程桌面加速、睡眠排查</td></tr><tr><td><a href="/blog/posts/%E6%B3%A8%E5%86%8C%E8%A1%A8%E4%BC%98%E5%8C%96/">注册表优化汇编</a></td><td>60+ 个注册表优化项，系统清理、个性化、硬件</td></tr><tr><td><a href="/blog/posts/%E5%AE%9E%E7%94%A8%E5%B7%A5%E5%85%B7%E8%84%9A%E6%9C%AC%E5%90%88%E9%9B%86/">实用工具脚本合集</a></td><td>强删文件、ms-settings URL、IP 查询等小工具</td></tr></tbody></table></section>
<section><h2>使用说明<a href="#使用说明"><span>#</span></a></h2><ol>
<li>注册表修改前请先备份</li>
<li>部分操作需要 Windows 10/11 专业版或企业版（组策略相关）</li>
</ol></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E5%8F%B3%E9%94%AE%E8%8F%9C%E5%8D%95%E6%B8%85%E7%90%86%E4%B8%8E%E5%AE%9A%E5%88%B6/</id>
      <title type="text">Windows 右键菜单清理与定制</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E5%8F%B3%E9%94%AE%E8%8F%9C%E5%8D%95%E6%B8%85%E7%90%86%E4%B8%8E%E5%AE%9A%E5%88%B6/"/>
      <summary type="text">Win11 右键菜单太臃肿？第三方软件总是偷偷添加菜单项？本文教你清理、恢复、自定义右键菜单的所有技巧。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>右键菜单是 Windows 日常使用的高频交互点。但装过的软件会不断往里面塞菜单项，久而久之变得又长又卡。本文从 Win11 经典菜单切换开始，涵盖清理残留、添加自定义项、恢复被删项的全流程。</p></section>
<section><h2>一、Win11 恢复经典右键菜单<a href="#一win11-恢复经典右键菜单"><span>#</span></a></h2><p>Windows 11 改成了折叠式右键菜单，很多常用功能要多点一次”显示更多选项”。如果你怀念 Win10 的经典菜单，一行注册表搞定：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InProcServer32]</span></div></div><div><div><div>2</div></div><div><span>@</span><span>=""</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>重启 Explorer 后生效。想恢复 Win11 样式就删掉这个键。</p></section>
<section><h2>二、文件夹空白处右键菜单：添加 WizTree<a href="#二文件夹空白处右键菜单添加-wiztree"><span>#</span></a></h2><p>WizTree 是一个磁盘空间分析工具，比 WinDirStat 快很多。把它加到右键菜单，随时分析任意文件夹：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;驱动器背景</span></div></div><div><div><div>2</div></div><div><span>[HKEY_CLASSES_ROOT\Drive\shell\WizTree]</span></div></div><div><div><div>3</div></div><div><span>@</span><span>="</span><span>&amp;WizTree</span><span>"</span></div></div><div><div><div>4</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"E:\\PortableApp\\wiztree\\WizTree64.exe\", 0</span><span>"</span></div></div><div><div><div>5</div></div><div><span>[HKEY_CLASSES_ROOT\Drive\shell\WizTree\command]</span></div></div><div><div><div>6</div></div><div><span>@</span><span>="</span><span>\"E:\\PortableApp\\wiztree\\WizTree64.exe\" \"%1\"</span><span>"</span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span>;文件夹</span></div></div><div><div><div>9</div></div><div><span>[HKEY_CLASSES_ROOT\Folder\shell\WizTree]</span></div></div><div><div><div>10</div></div><div><span>@</span><span>="</span><span>&amp;WizTree</span><span>"</span></div></div><div><div><div>11</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>E:\\PortableApp\\wiztree\\WizTree64.exe,0</span><span>"</span></div></div><div><div><div>12</div></div><div><span>[HKEY_CLASSES_ROOT\Folder\shell\WizTree\command]</span></div></div><div><div><div>13</div></div><div><span>@</span><span>="</span><span>\"E:\\PortableApp\\wiztree\\WizTree64.exe\" \"%1\"</span><span>"</span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>;目录背景</span></div></div><div><div><div>16</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shell\WizTree]</span></div></div><div><div><div>17</div></div><div><span>@</span><span>="</span><span>&amp;WizTree</span><span>"</span></div></div><div><div><div>18</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>E:\\PortableApp\\wiztree\\WizTree64.exe,0</span><span>"</span></div></div><div><div><div>19</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shell\WizTree\command]</span></div></div><div><div><div>20</div></div><div><span>@</span><span>="</span><span>\"E:\\PortableApp\\wiztree\\WizTree64.exe\" \"%1\"</span><span>"</span></div></div><div><div><div>21</div></div><div>
</div></div><div><div><div>22</div></div><div><span>;文件夹空白处</span></div></div><div><div><div>23</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\Background\shell\WizTree]</span></div></div><div><div><div>24</div></div><div><span>@</span><span>="</span><span>&amp;WizTree</span><span>"</span></div></div><div><div><div>25</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>E:\\PortableApp\\wiztree\\WizTree64.exe,0</span><span>"</span></div></div><div><div><div>26</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\Background\shell\WizTree\command]</span></div></div><div><div><div>27</div></div><div><span>@</span><span>="</span><span>\"E:\\PortableApp\\wiztree\\WizTree64.exe\" \"%1\"</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><blockquote><p>路径中的 <code>E:\PortableApp\wiztree\</code> 替换成你的实际安装路径。</p></blockquote></section>
<section><h2>三、右键添加”打开方式”菜单<a href="#三右键添加打开方式菜单"><span>#</span></a></h2><p>所有文件都加上”Open With”选项，方便手动选择程序：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CLASSES_ROOT\*\shell\OpenWith]</span></div></div><div><div><div>2</div></div><div><span>@</span><span>="</span><span>Open With</span><span>"</span></div></div><div><div><div>3</div></div><div><span>[HKEY_CLASSES_ROOT\*\shell\OpenWith\command]</span></div></div><div><div><div>4</div></div><div><span>@</span><span>="</span><span>\"C:\\Windows\Sysrem32\\rundll32.exe Shell32.dll,OpenAs_RunDLL %1\"</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>四、新建文件类型添加到右键菜单<a href="#四新建文件类型添加到右键菜单"><span>#</span></a></h2><p>默认右键”新建”里只有文件夹、文本文档等少数类型。可以添加 <code>.md</code> 和 <code>.xmind</code> 等：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;新建 .md 文件</span></div></div><div><div><div>2</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.md]</span></div></div><div><div><div>3</div></div><div><span>@</span><span>="</span><span>Typora.md</span><span>"</span></div></div><div><div><div>4</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.md\ShellNew]</span></div></div><div><div><div>5</div></div><div><span>"</span><span>NullFile</span><span>"=""</span></div></div><div><div><div>6</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.md\OpenWithProgids]</span></div></div><div><div><div>7</div></div><div><span>"</span><span>Nutstore.LightApp.md</span><span>"=""</span></div></div><div><div><div>8</div></div><div><span>"</span><span>Typora.md</span><span>"=""</span></div></div><div><div><div>9</div></div><div><span>"</span><span>VSCode.md</span><span>"=""</span></div></div><div><div><div>10</div></div><div>
</div></div><div><div><div>11</div></div><div><span>;新建 .xmind 文件</span></div></div><div><div><div>12</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.xmind]</span></div></div><div><div><div>13</div></div><div><span>@</span><span>="</span><span>XMind Workbook</span><span>"</span></div></div><div><div><div>14</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.xmind\ShellNew]</span></div></div><div><div><div>15</div></div><div><span>"</span><span>NullFile</span><span>"=""</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section>
<section><h2>五、清理第三方软件右键残留<a href="#五清理第三方软件右键残留"><span>#</span></a></h2><p>这是右键菜单管理中最实用的部分。装过又卸载的软件经常留下死掉的菜单项。</p><section><h3>删除常用软件残留<a href="#删除常用软件残留"><span>#</span></a></h3>

<table><thead><tr><th>软件</th><th>注册表路径</th></tr></thead><tbody><tr><td>百度云管家</td><td><code>HKCR\Directory\shellex\ContextMenuHandlers\YunShellExt</code></td></tr><tr><td>坚果云</td><td><code>HKCR\*\shellex\ContextMenuHandlers\NutstoreExt</code></td></tr><tr><td>Visual Studio</td><td><code>HKCR\Directory\shell\AnyCode</code></td></tr><tr><td>Intel 核显</td><td><code>HKCR\Directory\background\shellex\ContextMenuHandlers\igfxDTCM</code></td></tr><tr><td>QQ 发送到</td><td><code>HKCR\Folder\shellex\ContextMenuHandlers\QQShellExt</code></td></tr><tr><td>UltraISO</td><td><code>HKCR\Folder\shellex\ContextMenuHandlers\UltraISO</code></td></tr><tr><td>格式工厂</td><td><code>HKCR\Directory\shellex\ContextMenuHandlers\FormatFactoryShell</code></td></tr><tr><td>火萤</td><td><code>HKCR\Directory\Background\shellex\ContextMenuHandlers\HYWindow</code></td></tr><tr><td>Open with Code</td><td><code>HKCR\*\shell\VSCode</code></td></tr></tbody></table></section><section><h3>屏蔽系统自带菜单项<a href="#屏蔽系统自带菜单项"><span>#</span></a></h3><p>如果你觉得某些系统功能用不上，可以用 Blocked 列表屏蔽：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>;包含到库中</span></div></div><div><div><div>4</div></div><div><span>"</span><span>{3dad6c5d-2167-4cae-9914-f99e41c12cfa}</span><span>"="</span><span>Include In Library</span><span>"</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>;恢复以前的版本</span></div></div><div><div><div>7</div></div><div><span>"</span><span>{596AB062-B4D2-4215-9F74-E9109B0A8153}</span><span>"="</span><span>Restore Previous Versions</span><span>"</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>;共享</span></div></div><div><div><div>10</div></div><div><span>"</span><span>{e2bf9676-5f8f-435c-97eb-11607a5bedf7}</span><span>"="</span><span>Share</span><span>"</span></div></div><div><div><div>11</div></div><div>
</div></div><div><div><div>12</div></div><div><span>;Cast to Device</span></div></div><div><div><div>13</div></div><div><span>"</span><span>{7AD84985-87B4-4a16-BE58-8B72A5B390F7}</span><span>"="</span><span>Cast to Device</span><span>"</span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>;授予访问权限</span></div></div><div><div><div>16</div></div><div><span>"</span><span>{f81e9010-6ea4-11ce-a7ff-00aa003ca9f6}</span><span>"="</span><span>Give access to</span><span>"</span></div></div><div><div><div>17</div></div><div>
</div></div><div><div><div>18</div></div><div><span>;兼容性疑难解答</span></div></div><div><div><div>19</div></div><div><span>"</span><span>{1d27f844-3a1f-4410-85ac-14651078412d}</span><span>"="</span><span>Troubleshoot compatibility</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section><section><h3>屏蔽”固定到”菜单<a href="#屏蔽固定到菜单"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;Pin to Start</span></div></div><div><div><div>2</div></div><div><span>[-HKCR\exefile\shellex\ContextMenuHandlers\PintoStartScreen]</span></div></div><div><div><div>3</div></div><div><span>[-HKCR\Folder\shellex\ContextMenuHandlers\PintoStartScreen]</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>;Pin to Taskbar</span></div></div><div><div><div>6</div></div><div><span>[-HKCR\*\shellex\ContextMenuHandlers\{90AA3A4E-1CBA-4233-B8BB-535773D48449}]</span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span>;Pin to 快速访问</span></div></div><div><div><div>9</div></div><div><span>[-HKCR\Folder\shell\pintohome]</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>六、恢复被误删的右键菜单<a href="#六恢复被误删的右键菜单"><span>#</span></a></h2><p>误删了菜单项怎么办？对应的 CLSID 补回来即可：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;百度云管家</span></div></div><div><div><div>2</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\YunShellExt]</span></div></div><div><div><div>3</div></div><div><span>@</span><span>="</span><span>{6D85624F-305A-491d-8848-C1927AA0D790}</span><span>"</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>;UltraISO</span></div></div><div><div><div>6</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\UltraISO]</span></div></div><div><div><div>7</div></div><div><span>@</span><span>="</span><span>{AD392E40-428C-459F-961E-9B147782D099}</span><span>"</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>;格式工厂</span></div></div><div><div><div>10</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\FormatFactoryShell]</span></div></div><div><div><div>11</div></div><div><span>@</span><span>="</span><span>{A3777921-CFD3-4A6B-89BF-08E6B95716E8}</span><span>"</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>;坚果云</span></div></div><div><div><div>14</div></div><div><span>[HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\NutstoreExt]</span></div></div><div><div><div>15</div></div><div><span>@</span><span>="</span><span>{5D652B62-B702-496A-92BC-92C308251FEA}</span><span>"</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span>;Recuva</span></div></div><div><div><div>18</div></div><div><span>[HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\RecuvaShellExt]</span></div></div><div><div><div>19</div></div><div><span>@</span><span>="</span><span>{435E5DF5-2510-463C-B223-BDA47006D002}</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>右键菜单管理其实就三件事：<strong>添加</strong>需要的快捷操作，<strong>清理</strong>没用的软件残留，<strong>屏蔽</strong>不用的系统功能。定期打理一下，右键菜单就能保持清爽高效。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E5%91%BD%E4%BB%A4%E8%A1%8C/</id>
      <title type="text">Windows 命令行（CMD-PowerShell）</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E5%91%BD%E4%BB%A4%E8%A1%8C/"/>
      <summary type="text">CMD 特殊符号、变量扩展、管理员提权、PowerShell 别名、网络命令……这篇涵盖了日常使用 Windows 命令行的方方面面。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>虽然图形界面越来越完善，但命令行依然是 Windows 中最强大的工具。批处理脚本能自动化重复操作，一行命令 能做 GUI 里点半天的事。本文总结了 CMD 和 PowerShell 的常用语法和技巧。</p></section>
<section><h2>一、CMD 特殊符号详解<a href="#一cmd-特殊符号详解"><span>#</span></a></h2><section><h3>@ — 隐藏命令回显<a href="#--隐藏命令回显"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> a    ; 只输出 </span><span>"a"</span></div></div><div><div><div>2</div></div><div><span>echo</span><span> b     ; 先输出 </span><span>"echo b"</span><span>，再输出 </span><span>"b"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>% / %% — 变量引用<a href="#----变量引用"><span>#</span></a></h3><ul>
<li><code>%var%</code> — 引用普通变量</li>
<li><code>%0</code>~<code>%9</code> — 批处理参数（<code>%0</code> 为脚本自身路径）</li>
<li><code>%%i</code> — for 循环中的变量</li>
</ul><p><strong>最常用的参数扩展：</strong></p>

<table><thead><tr><th>写法</th><th>含义</th></tr></thead><tbody><tr><td><code>%~dp0</code></td><td><strong>当前脚本所在目录</strong>（最常用，没有之一）</td></tr><tr><td><code>%~nx0</code></td><td>文件名 + 扩展名</td></tr><tr><td><code>%~n0</code></td><td>文件名（无扩展名）</td></tr><tr><td><code>%~x0</code></td><td>扩展名</td></tr><tr><td><code>%~f0</code></td><td>完整路径</td></tr><tr><td><code>%~d0</code></td><td>盘符</td></tr><tr><td><code>%~p0</code></td><td>路径</td></tr><tr><td><code>%~s0</code></td><td>短路径（8.3 格式）</td></tr></tbody></table></section><section><h3>:: 和 : — 标签与注释<a href="#-和---标签与注释"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>:: 这是注释（推荐）</span></div></div><div><div><div>2</div></div><div><span>rem</span><span> 这也是注释（但会解析特殊字符）</span></div></div><div><div><div>3</div></div><div><span>:</span><span>label</span><span>  ; 定义标签，可用 </span><span>goto</span><span> </span><span>label</span><span> 跳转</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>重定向与管道<a href="#重定向与管道"><span>#</span></a></h3>

<table><thead><tr><th>符号</th><th>含义</th></tr></thead><tbody><tr><td><code>&gt;</code></td><td>覆盖写入文件</td></tr><tr><td><code>&gt;&gt;</code></td><td>追加写入文件</td></tr><tr><td><code>&lt;</code></td><td>从文件读取输入</td></tr><tr><td><code>|</code></td><td>管道：前一个命令的输出传给后一个命令</td></tr><tr><td><code>^</code></td><td>转义特殊字符（<code>&gt;</code>, <code>|</code>, <code>&amp;</code> 等）</td></tr></tbody></table></section><section><h3>命令连接符<a href="#命令连接符"><span>#</span></a></h3>

<table><thead><tr><th>符号</th><th>含义</th></tr></thead><tbody><tr><td><code>&amp;</code></td><td>无条件依次执行</td></tr><tr><td><code>&amp;&amp;</code></td><td>前一条成功才执行</td></tr><tr><td><code>||</code></td><td>前一条失败才执行</td></tr></tbody></table></section><section><h3>() — 语句块<a href="#--语句块"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>(</span></div></div><div><div><div>2</div></div><div><span>echo</span><span> 第一行</span></div></div><div><div><div>3</div></div><div><span>echo</span><span> 第二行</span></div></div><div><div><div>4</div></div><div><span>)&gt;test.txt</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>二、申请管理员权限<a href="#二申请管理员权限"><span>#</span></a></h2><p>批处理脚本中申请提权的标准模板，有三种常见风格：</p><section><h3>最简版（一行搞定）<a href="#最简版一行搞定"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>%1</span><span> mshta vbscript:CreateObject(</span></span><span>"Shell.Application"</span><span>).ShellExecute(</span><span>"cmd.exe"</span><span>,</span><span><span>"/c </span><span>%</span></span><span>~s0</span><span> ::"</span><span>,</span><span>""</span><span>,</span><span>"runas"</span><span>,1)(window.close)&amp;&amp;exit</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>带提示版<a href="#带提示版"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>chcp</span><span> </span><span>65001</span><span>&gt;</span><span>nul</span></div></div><div><div><div>3</div></div><div><span>net session</span><span> </span><span>1</span><span>&gt;</span><span>NUL</span><span> </span><span>2</span><span>&gt;</span><span>NUL</span><span>||(mshta vbscript:CreateObject</span><span>^</span><span>(</span><span>"Shell.Application"</span><span>^</span><span>).ShellExecute</span><span>^</span><span>(</span><span><span>"</span><span>%</span></span><span>~0</span><span>"</span><span>,</span><span><span>" </span><span>%</span></span><span>*</span><span> ::"</span><span>,</span><span>""</span><span>,</span><span>"runas"</span><span>,1</span><span>^</span><span>)</span><span>^</span><span>(window.close</span><span>^</span><span>)&amp;&amp;exit)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>一闪而过版<a href="#一闪而过版"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>cd/d</span><span><span>"</span><span>%</span></span><span>~dp0</span><span>"</span><span>&amp;(cacls </span><span><span>"</span><span>%</span></span><span>SystemDrive</span><span><span>%</span><span>\System Volume Information"</span></span><span> &gt;</span><span>nul</span><span> </span><span>2</span><span>&gt;</span><span>nul</span><span>)||(start </span><span>""</span><span> mshta vbscript:CreateObject</span><span>^</span><span>(</span><span>"Shell.Application"</span><span>^</span><span>).ShellExecute</span><span>^</span><span>(</span><span><span>"</span><span>%</span></span><span>~nx0</span><span>"</span><span>,</span><span><span>" </span><span>%</span></span><span>*</span><span>"</span><span>,</span><span>""</span><span>,</span><span>"runas"</span><span>,1</span><span>^</span><span>)</span><span>^</span><span>(window.close</span><span>^</span><span>)&amp;exit)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>ShellExecute 参数说明<a href="#shellexecute-参数说明"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Shell.ShellExecute "程序", "参数", "目录", "操作", "窗口类型"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>操作参数：</strong> <code>open</code>（打开）、<code>runas</code>（管理员运行）、<code>edit</code>（编辑）、<code>print</code>（打印）</p><p><strong>窗口类型：</strong> 0=隐藏 1=正常 2=最小化 3=最大化</p></section></section>
<section><h2>三、CMD 代码页与乱码解决<a href="#三cmd-代码页与乱码解决"><span>#</span></a></h2><section><h3>临时切换<a href="#临时切换"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>chcp</span><span> </span><span>65001</span><span>  ; UTF-8</span></div></div><div><div><div>2</div></div><div><span>chcp</span><span> </span><span>936</span><span>    ; GBK（简体中文默认）</span></div></div><div><div><div>3</div></div><div><span>chcp</span><span> </span><span>950</span><span>    ; 繁体中文 Big5</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>永久修改注册表<a href="#永久修改注册表"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>CodePage</span><span>"=</span><span>dword</span><span>:</span><span>0000fde9</span><span>  </span><span>; 65001 = UTF-8</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>四、findstr 命令详解<a href="#四findstr-命令详解"><span>#</span></a></h2><p>CMD 版的 grep：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>findstr</span><span> [参数] </span><span>"字符串"</span><span> [文件]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>/B      行首匹配</span></div></div><div><div><div>4</div></div><div><span>/E      行尾匹配</span></div></div><div><div><div>5</div></div><div><span>/R      正则表达式</span></div></div><div><div><div>6</div></div><div><span>/S      递归搜索</span></div></div><div><div><div>7</div></div><div><span>/I      不区分大小写</span></div></div><div><div><div>8</div></div><div><span>/N      显示行号</span></div></div><div><div><div>9</div></div><div><span>/M      只显示文件名</span></div></div><div><div><div>10</div></div><div><span>/V      不包含匹配的行</span></div></div><div><div><div>11</div></div><div><span>/C:str  使用文字字符串（允许空格）</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>五、wmic 命令参考<a href="#五wmic-命令参考"><span>#</span></a></h2><p>WMIC 是 Windows 强大的管理工具，可以查询和管理几乎一切系统资源。</p><section><h3>进程管理<a href="#进程管理"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;列出所有进程及命令行参数</span></div></div><div><div><div>2</div></div><div><span>wmic</span><span> process get caption,commandline /value</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;查询特定进程</span></div></div><div><div><div>5</div></div><div><span>wmic</span><span> process </span><span>where</span><span> caption=</span><span>"notepad.exe"</span><span> get caption,commandline /value</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;终止进程</span></div></div><div><div><div>8</div></div><div><span>wmic</span><span> process </span><span>where</span><span> name=</span><span>"qq.exe"</span><span> </span><span>call</span><span> terminate</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>硬件信息<a href="#硬件信息"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;磁盘信息</span></div></div><div><div><div>2</div></div><div><span>wmic</span><span> DISKDRIVE get deviceid,Caption,size,InterfaceType</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;CPU 信息</span></div></div><div><div><div>5</div></div><div><span>wmic</span><span> cpu get name,addresswidth,processorid</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;内存信息</span></div></div><div><div><div>8</div></div><div><span>wmic</span><span> memlogical get totalphysicalmemory</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;主板信息</span></div></div><div><div><div>11</div></div><div><span>wmic</span><span> BaseBoard get Manufacturer,Product,Version,SerialNumber</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>服务管理<a href="#服务管理"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>wmic</span><span> SERVICE </span><span>where</span><span> name=</span><span>"tlntsvr"</span><span> </span><span>set</span><span> </span><span>startmode</span><span>=</span><span>"Auto"</span></div></div><div><div><div>2</div></div><div><span>wmic</span><span> SERVICE </span><span>where</span><span> name=</span><span>"tlntsvr"</span><span> </span><span>call</span><span> startservice</span></div></div><div><div><div>3</div></div><div><span>wmic</span><span> SERVICE </span><span>where</span><span> name=</span><span>"ShardAccess"</span><span> </span><span>call</span><span> stopservice</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>共享管理<a href="#共享管理"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;建立共享</span></div></div><div><div><div>2</div></div><div><span>WMIC</span><span> SHARE </span><span>CALL</span><span> Create </span><span>""</span><span>,</span><span>"test"</span><span>,</span><span>"3"</span><span>,</span><span>"TestShareName"</span><span>,</span><span>""</span><span>,</span><span>"c:\test"</span><span>,0</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;删除共享</span></div></div><div><div><div>5</div></div><div><span>WMIC</span><span> SHARE </span><span>where</span><span> name=</span><span>"C$"</span><span> </span><span>call</span><span> delete</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>六、PowerShell 命令别名速查<a href="#六powershell-命令别名速查"><span>#</span></a></h2><blockquote><p>完整别名列表在 PowerShell 中运行 <code>Get-Alias</code> 查看。</p></blockquote>

<table><thead><tr><th>完整命令</th><th>别名</th></tr></thead><tbody><tr><td><code>Get-ChildItem</code></td><td><code>dir</code>, <code>ls</code>, <code>gci</code></td></tr><tr><td><code>Get-Content</code></td><td><code>cat</code>, <code>gc</code>, <code>type</code></td></tr><tr><td><code>Get-Process</code></td><td><code>ps</code>, <code>gps</code></td></tr><tr><td><code>Get-Service</code></td><td><code>gsv</code></td></tr><tr><td><code>Set-Location</code></td><td><code>cd</code>, <code>chdir</code>, <code>sl</code></td></tr><tr><td><code>Copy-Item</code></td><td><code>copy</code>, <code>cp</code>, <code>cpi</code></td></tr><tr><td><code>Move-Item</code></td><td><code>move</code>, <code>mv</code>, <code>mi</code></td></tr><tr><td><code>Remove-Item</code></td><td><code>del</code>, <code>rm</code>, <code>rd</code>, <code>ri</code></td></tr><tr><td><code>ForEach-Object</code></td><td><code>%</code>, <code>foreach</code></td></tr><tr><td><code>Where-Object</code></td><td><code>?</code>, <code>where</code></td></tr><tr><td><code>Select-Object</code></td><td><code>select</code></td></tr><tr><td><code>Sort-Object</code></td><td><code>sort</code></td></tr><tr><td><code>Get-Help</code></td><td><code>help</code>, <code>man</code></td></tr><tr><td><code>Invoke-WebRequest</code></td><td><code>curl</code>, <code>wget</code>, <code>iwr</code></td></tr><tr><td><code>Set-Clipboard</code></td><td><code>scb</code></td></tr><tr><td><code>Get-Clipboard</code></td><td><code>gcb</code></td></tr><tr><td><code>Stop-Process</code></td><td><code>kill</code>, <code>spps</code></td></tr><tr><td><code>Start-Sleep</code></td><td><code>sleep</code></td></tr><tr><td><code>New-Item</code></td><td><code>ni</code></td></tr><tr><td><code>Select-String</code></td><td><code>sls</code></td></tr></tbody></table></section>
<section><h2>七、net 命令参考<a href="#七net-命令参考"><span>#</span></a></h2><div><div><div><figure><figcaption><span></span><span>Terminal window</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;用户管理</span></div></div><div><div><div>2</div></div><div><span>net user</span><span> 用户名 密码 /add               ; 建立用户</span></div></div><div><div><div>3</div></div><div><span>net user</span><span> guest /active:yes               ; 激活 guest</span></div></div><div><div><div>4</div></div><div><span>net localgroup</span><span> administrators 用户名 /add ; 提权到管理员</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>;服务管理</span></div></div><div><div><div>7</div></div><div><span>net start</span><span> 服务名</span></div></div><div><div><div>8</div></div><div><span>net stop</span><span> 服务名</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;共享</span></div></div><div><div><div>11</div></div><div><span>net share</span><span>          ; 查看本地共享</span></div></div><div><div><div>12</div></div><div><span>net use</span><span> \\IP\ipc$  ; 建立 IPC 连接</span></div></div><div><div><div>13</div></div><div><span>net view</span><span>           ; 查看局域网共享</span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>;网络</span></div></div><div><div><div>16</div></div><div><span>netstat</span><span> -an        ; 查看所有端口</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section>
<section><h2>八、端口占用查询与终止<a href="#八端口占用查询与终止"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>chcp</span><span> </span><span>65001</span><span>&gt;</span><span>nul</span></div></div><div><div><div>3</div></div><div><span>set</span><span> /p </span><span>port</span><span><span>=</span><span>查询端口:</span></span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>echo</span><span> 端口占用:</span></div></div><div><div><div>6</div></div><div><span>netstat</span><span> -ano | </span><span>findstr</span><span> /r /c:</span><span><span>":</span><span>%</span></span><span>port</span><span><span>%</span><span>.*LISTENING"</span></span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span>set</span><span> /p </span><span>pid</span><span><span>=</span><span>终止进程PID:</span></span></div></div><div><div><div>9</div></div><div><span>taskkill</span><span> /pid </span><span>%pid%</span><span> /f</span></div></div><div><div><div>10</div></div><div><span>pause</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>九、端口转发（netsh）<a href="#九端口转发netsh"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;显示所有端口代理</span></div></div><div><div><div>2</div></div><div><span>netsh</span><span> interface portproxy show all</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;添加端口转发</span></div></div><div><div><div>5</div></div><div><span>netsh</span><span> interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=</span><span>2222</span><span> connectaddress=172.17.39.183 connectport=</span><span>2222</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;删除端口转发</span></div></div><div><div><div>8</div></div><div><span>netsh</span><span> interface portproxy delete v4tov4 listenaddress=127.0.0.1 listenport=</span><span>2222</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;重置所有规则</span></div></div><div><div><div>11</div></div><div><span>netsh</span><span> interface portproxy reset</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十、DLL 注册/反注册<a href="#十dll-注册反注册"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;注册</span></div></div><div><div><div>2</div></div><div><span>C:\Windows\system32\regsvr32.exe /s some-dll</span></div></div><div><div><div>3</div></div><div><span>C:\Windows\SysWOW64\regsvr32.exe /s some-dll</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>;反注册</span></div></div><div><div><div>6</div></div><div><span>C:\Windows\system32\regsvr32.exe /s /u some-dll</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十一、一键操作脚本<a href="#十一一键操作脚本"><span>#</span></a></h2><section><h3>一键注销<a href="#一键注销"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>if</span><span> </span><span><span>"</span><span>%</span></span><span>1</span><span>"</span><span>==</span><span>"h"</span><span> </span><span>goto</span><span> begin</span></div></div><div><div><div>3</div></div><div><span>start</span><span> mshta vbscript:createobject(</span><span>"wscript.shell"</span><span>).run(</span><span><span>"""</span><span>%</span></span><span>~nx0</span><span>"" h"</span><span>,0)(window.close)&amp;&amp;exit</span></div></div><div><div><div>4</div></div><div><span>:</span><span>begin</span></div></div><div><div><div>5</div></div><div><span>logoff</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>一键锁屏<a href="#一键锁屏"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>if</span><span> </span><span><span>"</span><span>%</span></span><span>1</span><span>"</span><span>==</span><span>"h"</span><span> </span><span>goto</span><span> begin</span></div></div><div><div><div>3</div></div><div><span>start</span><span> mshta vbscript:createobject(</span><span>"wscript.shell"</span><span>).run(</span><span><span>"""</span><span>%</span></span><span>~nx0</span><span>"" h"</span><span>,0)(window.close)&amp;&amp;exit</span></div></div><div><div><div>4</div></div><div><span>:</span><span>begin</span></div></div><div><div><div>5</div></div><div><span>rundll32.exe user32.dll LockWorkStation</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>一键关机<a href="#一键关机"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>if</span><span> </span><span><span>"</span><span>%</span></span><span>1</span><span>"</span><span>==</span><span>"h"</span><span> </span><span>goto</span><span> begin</span></div></div><div><div><div>3</div></div><div><span>start</span><span> mshta vbscript:createobject(</span><span>"wscript.shell"</span><span>).run(</span><span><span>"""</span><span>%</span></span><span>~nx0</span><span>"" h"</span><span>,0)(window.close)&amp;&amp;exit</span></div></div><div><div><div>4</div></div><div><span>:</span><span>begin</span></div></div><div><div><div>5</div></div><div><span>shutdown.exe -p</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>关闭显示器<a href="#关闭显示器"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>powershell</span><span> (Add-Type '[DllImport(\</span><span>"user32.dll\"</span><span>)]</span><span>^</span><span>public static extern int PostMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::PostMessage(-1,0x0112,0xF170,2)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>不显示 CMD 窗口运行命令<a href="#不显示-cmd-窗口运行命令"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>if</span><span> </span><span><span>"</span><span>%</span></span><span>1</span><span>"</span><span>==</span><span>"h"</span><span> </span><span>goto</span><span> begin</span></div></div><div><div><div>3</div></div><div><span>start</span><span> mshta vbscript:createobject(</span><span>"wscript.shell"</span><span>).run(</span><span><span>"""</span><span>%</span></span><span>~nx0</span><span>"" h"</span><span>,0)(window.close)&amp;&amp;exit</span></div></div><div><div><div>4</div></div><div><span>:</span><span>begin</span></div></div><div><div><div>5</div></div><div><span>;在这里放要执行的命令</span></div></div><div><div><div>6</div></div><div><span>winver</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>十二、环境变量备份<a href="#十二环境变量备份"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>用户 Path:</span></div></div><div><div><div>2</div></div><div><span>D:\dependence\anaconda3;...android\platform-tools;...</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>系统 Path:</span></div></div><div><div><div>5</div></div><div><span>C:\Windows;C:\Windows\system32;...%JAVA_HOME%\bin;...</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>ANDROID_SDK = D:\dependence\Sdk\android\</span></div></div><div><div><div>8</div></div><div><span>JAVA_HOME = D:\dependence\Sdk\java\openjdk-11</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>命令行是 Windows 的瑞士军刀。掌握 CMD 符号、变量扩展和提权模板，你就能写出强大的批处理脚本。配合 PowerShell 的丰富命令集，几乎可以做任何系统管理操作。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E5%AE%9E%E7%94%A8%E5%B7%A5%E5%85%B7%E8%84%9A%E6%9C%AC%E5%90%88%E9%9B%86/</id>
      <title type="text">Windows 实用工具脚本合集</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E5%AE%9E%E7%94%A8%E5%B7%A5%E5%85%B7%E8%84%9A%E6%9C%AC%E5%90%88%E9%9B%86/"/>
      <summary type="text">ADB 连接模拟器、强删文件、ms-settings 快速跳转、QQ 缓存清理……日常 Windows 使用中最实用的小脚本汇总。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>日常使用 Windows 总会遇到一些”差一点”的情况：想快速连个 ADB、想删一个删不掉的文件、想一键打开某个系统设置页面。本文整理了多年积累的实用小脚本，全是高频场景。</p></section>
<section><h2>强删文件/文件夹（类似 rm -rf）<a href="#强删文件文件夹类似-rm--rf"><span>#</span></a></h2><p>Windows 有时会提示”文件正在使用”或”需要管理员权限”导致删不掉。这个脚本利用 <code>\\?\</code> 前缀绕过路径限制：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>;删除文件（支持通配符）</span></div></div><div><div><div>3</div></div><div><span>DEL</span><span><span> /F /A /Q \\?\</span><span>%1</span></span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>;删除文件夹</span></div></div><div><div><div>6</div></div><div><span>RD</span><span><span> /S /Q \\?\</span><span>%1</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>参数说明：</strong></p><ul>
<li><code>/S</code> — 删除所有子目录</li>
<li><code>/Q</code> — 安静模式</li>
<li><code>/F</code> — 强制删除只读文件</li>
<li><code>/A</code> — 按属性选择文件</li>
</ul><blockquote><p>将文件或文件夹拖到这个脚本上即可使用。</p></blockquote></section>
<section><h2>导出进程列表（dump）<a href="#导出进程列表dump"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>echo</span><span> 导出资源使用情况</span></div></div><div><div><div>2</div></div><div><span>tasklist</span><span> /m&gt;C:\Users\zelda\Desktop\list.txt</span></div></div><div><div><div>3</div></div><div><span>tasklist</span><span> /svc&gt;C:\Users\zelda\Desktop\list_svc.txt</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>QQ 缓存过大问题 — Group2 文件夹<a href="#qq-缓存过大问题--group2-文件夹"><span>#</span></a></h2><p>QQ 的 <code>Group2</code> 文件夹缓存越来越大，但又不能直接删。通过目录链接把 <code>Group</code> 指向 <code>Group2</code>，QQ 就能复用已有缓存：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>mklink</span><span> /d Group .\Group2</span></div></div></code></pre><div><div></div><div></div></div></figure></div><blockquote><p>以管理员身份在 QQ 的 image 目录下执行。</p></blockquote></section>
<section><h2>ms-settings: URL 速查<a href="#ms-settings-url-速查"><span>#</span></a></h2><p>Windows 设置页面的 URI 协议，可以在”运行”或脚本中直接跳转到指定设置页。省去层层点击的麻烦。</p><section><h3>系统<a href="#系统"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>屏幕</td><td><code>ms-settings:display</code></td></tr><tr><td>通知</td><td><code>ms-settings:notifications</code></td></tr><tr><td>电源</td><td><code>ms-settings:powersleep</code></td></tr><tr><td>存储</td><td><code>ms-settings:storagesense</code></td></tr></tbody></table></section><section><h3>蓝牙和其他设备<a href="#蓝牙和其他设备"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>蓝牙</td><td><code>ms-settings:bluetooth</code></td></tr><tr><td>鼠标和触摸板</td><td><code>ms-settings:mousetouchpad</code></td></tr></tbody></table></section><section><h3>网络和 Internet<a href="#网络和-internet"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>WLAN</td><td><code>ms-settings:network-wifi</code></td></tr><tr><td>以太网</td><td><code>ms-settings:network-ethernet</code></td></tr><tr><td>VPN</td><td><code>ms-settings:network-vpn</code></td></tr><tr><td>移动热点</td><td><code>ms-settings:network-mobilehotspot</code></td></tr><tr><td>代理</td><td><code>ms-settings:network-proxy</code></td></tr></tbody></table></section><section><h3>个性化<a href="#个性化"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>背景</td><td><code>ms-settings:personalization-background</code></td></tr><tr><td>颜色</td><td><code>ms-settings:colors</code></td></tr><tr><td>主题</td><td><code>ms-settings:themes</code></td></tr><tr><td>锁屏</td><td><code>ms-settings:lockscreen</code></td></tr></tbody></table></section><section><h3>帐户<a href="#帐户"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>登录选项</td><td><code>ms-settings:signinoptions</code></td></tr></tbody></table></section><section><h3>时间和语言<a href="#时间和语言"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>日期和时间</td><td><code>ms-settings:dateandtime</code></td></tr><tr><td>输入</td><td><code>ms-settings:typing</code></td></tr></tbody></table></section><section><h3>辅助功能<a href="#辅助功能"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>放大镜</td><td><code>ms-settings:easeofaccess-magnifier</code></td></tr><tr><td>键盘</td><td><code>ms-settings:easeofaccess-keyboard</code></td></tr></tbody></table></section><section><h3>更新<a href="#更新"><span>#</span></a></h3>

<table><thead><tr><th>设置</th><th>命令</th></tr></thead><tbody><tr><td>Windows 更新</td><td><code>ms-settings:windowsupdate</code></td></tr></tbody></table><blockquote><p>完整官方列表：<a href="https://learn.microsoft.com/zh-cn/windows/uwp/launch-resume/launch-settings-app" target="_blank">ms-settings URI 方案</a></p></blockquote></section></section>
<section><h2>新建 .cmd 文件<a href="#新建-cmd-文件"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>nul</span><span><span>&gt;</span><span>%~d0</span><span>\新的文档.txt</span></span></div></div><div><div><div>2</div></div><div><span>ren</span><span> 新的文档.txt 新的文档.cmd</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>VBScript 弹窗<a href="#vbscript-弹窗"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>mshta vbscript:msgbox(</span><span>"消息内容"</span><span>)(window.close)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>非 ASCII 字符正则<a href="#非-ascii-字符正则"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>^</span><span>\x00</span><span>-</span><span>\x7f</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>\x00-\x7f</code> 是 ASCII 范围，取反即匹配所有非 ASCII 字符（中文、日文等）。</p></section>
<section><h2>cmd 默认代码页乱码修复<a href="#cmd-默认代码页乱码修复"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>CodePage</span><span>"=</span><span>dword</span><span>:</span><span>0000fde9</span><span>  </span><span>; 65001 = UTF-8</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>获取本机 IP 与公网 IP<a href="#获取本机-ip-与公网-ip"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>chcp</span><span> </span><span>65001</span><span>&gt;</span><span>nul</span></div></div><div><div><div>3</div></div><div><span>for</span><span> /f </span><span>"tokens=2 delims=:"</span><span><span> </span><span>%%i</span><span> </span></span><span>in</span><span> ('ipconfig </span><span>^</span><span>| </span><span>find</span><span> /i </span><span>"IPv"</span><span>') </span><span>do</span><span> </span><span>set</span><span> </span><span>ip</span><span><span>=</span><span>%%i</span></span></div></div><div><div><div>4</div></div><div><span>echo</span><span> 本机ip: </span><span>%ip%</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>curl https://myip.ipip.net/</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>MMC 管理工具速查<a href="#mmc-管理工具速查"><span>#</span></a></h2>

<table><thead><tr><th>命令</th><th>功能</th></tr></thead><tbody><tr><td><code>certmgr.msc</code></td><td>证书管理</td></tr><tr><td><code>gpedit.msc</code></td><td>组策略</td></tr><tr><td><code>secpol.msc</code></td><td>本地安全策略</td></tr><tr><td><code>taskschd.msc</code></td><td>计划任务</td></tr></tbody></table></section>
<section><h2>CMD 注释方法<a href="#cmd-注释方法"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>rem</span><span> 这是 rem 注释（会解析特殊字符，不太安全）</span></div></div><div><div><div>2</div></div><div><span>:: 这是 :: 注释（推荐，效率更高）</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>脚本中的 %errorlevel% 判断<a href="#脚本中的-errorlevel-判断"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>command &amp;&amp; </span><span>echo</span><span> 成功 || </span><span>echo</span><span> 失败</span></div></div><div><div><div>2</div></div><div><span>;等同于</span></div></div><div><div><div>3</div></div><div><span>command</span></div></div><div><div><div>4</div></div><div><span>if</span><span> </span><span><span>"</span><span>%</span></span><span>errorlevel</span><span><span>%</span><span>"</span></span><span>==</span><span>"0"</span><span> (echo 成功) </span><span>else</span><span> </span><span>echo</span><span> 失败</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>这些小脚本虽然简单，但每个都解决过真实痛点。建议把常用的（IP 查询、ms-settings）做成 <code>.cmd</code> 文件放在桌面或快速启动目录，随用随点。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8%E7%9A%84%E5%A4%9A%E7%A7%8D%E6%96%B9%E5%BC%8F/</id>
      <title type="text">Windows 开机自启动的多种方式</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E5%BC%80%E6%9C%BA%E8%87%AA%E5%90%AF%E5%8A%A8%E7%9A%84%E5%A4%9A%E7%A7%8D%E6%96%B9%E5%BC%8F/"/>
      <summary type="text">注册表、计划任务、服务、启动目录……盘点 Windows 开机自启动的所有姿势，附跳过 UAC 的实用技巧。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>每次开机都要手动打开一堆程序？效率太低了。Windows 提供了多种开机自启动机制，从简单的注册表到强大的计划任务，各有适用场景。</p><p>本文系统地梳理了所有开机自启动方式，文末还附带了跳过 UAC 弹窗的实用方案。</p></section>
<section><h2>1. 注册表启动项（最常用）<a href="#1-注册表启动项最常用"><span>#</span></a></h2><p>最常见也最简单的自启方式，适合普通应用程序。</p><section><h3>位置一览<a href="#位置一览"><span>#</span></a></h3>

<table><thead><tr><th>位置</th><th>路径</th><th>作用域</th></tr></thead><tbody><tr><td>系统级</td><td><code>HKLM\...\Run</code></td><td>所有用户</td></tr><tr><td>32 位系统级</td><td><code>HKLM\...\Wow6432Node\Run</code></td><td>32 位程序的系统级启动</td></tr><tr><td>用户级</td><td><code>HKCU\...\Run</code></td><td>当前用户</td></tr><tr><td>新用户默认</td><td><code>HKCU\DEFAULT\...\Run</code></td><td>新建用户的模板</td></tr><tr><td>Session 管理器</td><td><code>HKLM\SYSTEM\...\Session Manager</code></td><td>系统服务级别的启动</td></tr></tbody></table><p><strong>完整路径：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run</span></div></div><div><div><div>2</div></div><div><span>HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run</span></div></div><div><div><div>3</div></div><div><span>HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run</span></div></div><div><div><div>4</div></div><div><span>HKCU\DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\Run</span></div></div><div><div><div>5</div></div><div><span>HKCU\DEFAULT\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce</span></div></div><div><div><div>6</div></div><div><span>HKLM\SYSTEM\CurrentControlSet\Control\Session Manager</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>启动目录（当前用户）：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>%UserProfile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>用法<a href="#用法"><span>#</span></a></h3><p>在注册表 <code>Run</code> 键下新建一个字符串值，名称随意，值为程序的完整路径。或者直接把快捷方式拖到启动目录里。</p></section></section>
<section><h2>2. 计划任务（schtasks）— 跳过 UAC<a href="#2-计划任务schtasks-跳过-uac"><span>#</span></a></h2><p>如果你需要程序以管理员权限开机自启，但不想每次都看到 UAC 弹窗，计划任务是最优雅的解法。</p><section><h3>基础命令<a href="#基础命令"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>SchTasks</span><span> /Create /TN </span><span>"任务名称"</span><span> /SC 频率 /TR </span><span>"程序路径"</span><span> /RL 运行级别</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>参数详解<a href="#参数详解"><span>#</span></a></h3>

<table><thead><tr><th>参数</th><th>作用</th></tr></thead><tbody><tr><td><code>/SC</code></td><td>触发频率：<code>ONLOGON</code>（登录时）、<code>ONSTART</code>（开机时）、<code>ONCE</code>（一次性）等</td></tr><tr><td><code>/RL HIGHEST</code></td><td><strong>以最高权限运行，关键就在于这个参数</strong></td></tr><tr><td><code>/TR</code></td><td>要执行的程序路径</td></tr><tr><td><code>/TN</code></td><td>任务名称</td></tr><tr><td><code>/F</code></td><td>强制覆盖已存在的任务</td></tr><tr><td><code>/DELAY mmmm:ss</code></td><td>延迟执行时间</td></tr><tr><td><code>/IT</code></td><td>仅在用户登录时交互运行</td></tr><tr><td><code>/NP</code></td><td>不存储密码</td></tr><tr><td><code>/RU</code></td><td>指定运行账户</td></tr><tr><td><code>/ST HH:mm</code></td><td>指定开始时间</td></tr></tbody></table></section><section><h3>实战例子<a href="#实战例子"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;登录时启动 cmd（跳过 UAC）</span></div></div><div><div><div>2</div></div><div><span>SchTasks</span><span> /Create /TN </span><span>"cmdSkipUAC"</span><span> /SC ONLOGON /TR </span><span>"C:\Windows\System32\cmd.exe"</span><span> /RL HIGHEST</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;登录时启动 MouseInc</span></div></div><div><div><div>5</div></div><div><span>SchTasks</span><span> /Create /TN </span><span>"MouseIncSkipUAC"</span><span> /SC ONLOGON /TR </span><span>"E:\PortableApp\0\MouseInc\MouseInc.exe"</span><span> /RL HIGHEST</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;开机时启动风扇控制</span></div></div><div><div><div>8</div></div><div><span>SchTasks</span><span> /Create /TN </span><span>"MyFanControl"</span><span> /SC ONSTART /TR </span><span>"E:\PortableApp\0\MyFanControl\MyFanControl.exe"</span><span> /RL HIGHEST</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;登录时启动 Ditto（剪贴板工具）</span></div></div><div><div><div>11</div></div><div><span>SchTasks</span><span> /Create /TN </span><span>"DittoSkipUAC"</span><span> /SC ONLOGON /TR </span><span>"E:\PortableApp\0\Ditto\Ditto.exe"</span><span> /RL HIGHEST</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>其他计划任务操作<a href="#其他计划任务操作"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;手动运行</span></div></div><div><div><div>2</div></div><div><span>schtasks</span><span> /run /TN </span><span>"任务名称"</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;查询所有任务</span></div></div><div><div><div>5</div></div><div><span>schtasks</span><span> /query</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;更改任务属性</span></div></div><div><div><div>8</div></div><div><span>schtasks</span><span> /change</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;删除任务</span></div></div><div><div><div>11</div></div><div><span>schtasks</span><span> /delete /TN </span><span>"任务名称"</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>;中止运行中的任务</span></div></div><div><div><div>14</div></div><div><span>schtasks</span><span> /end /TN </span><span>"任务名称"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>3. 创建系统服务<a href="#3-创建系统服务"><span>#</span></a></h2><p>可以把程序注册为 Windows 服务实现开机自启，但<strong>不推荐</strong>。</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sc</span><span> create 服务名称 binPath= 文件路径 start= auto type= own displayname= 显示名称</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>参数说明：</strong></p>

<table><thead><tr><th>参数</th><th>可选值</th></tr></thead><tbody><tr><td><code>type=</code></td><td><code>own</code>、<code>share</code>、<code>interact</code>、<code>kernel</code>、<code>filesys</code></td></tr><tr><td><code>start=</code></td><td><code>auto</code>（自动）、<code>demand</code>（手动）、<code>disabled</code>（禁用）、<code>delayed-auto</code>（延迟启动）</td></tr><tr><td><code>binPath=</code></td><td><code>.exe</code> 文件的完整路径</td></tr><tr><td><code>DisplayName=</code></td><td>在服务管理器里看到的名称</td></tr></tbody></table><p><strong>删除服务：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sc</span><span> delete 服务名称</span></div></div></code></pre><div><div></div><div></div></div></figure></div><blockquote><p>⚠️ <strong>为什么不推荐？</strong> Windows 服务由系统账户启动，权限较高。普通程序（尤其是带 GUI 的）在服务环境下运行可能会有账户交互问题，而且不容易被普通用户管理。</p><p>除非你知道自己在做什么，否则优先考虑计划任务或注册表启动。</p></blockquote></section>
<section><h2>4. 服务启动类型详解<a href="#4-服务启动类型详解"><span>#</span></a></h2><p>通过注册表直接管理服务的启动类型：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\ControlSet001\Services\&lt;服务名称&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div>

<table><thead><tr><th>启动类型</th><th>Start 值</th><th>说明</th></tr></thead><tbody><tr><td>延迟自动</td><td>Start=2, DelayedAutostart=1</td><td>系统启动后稍等再启动</td></tr><tr><td>自动</td><td>Start=2</td><td>随系统启动</td></tr><tr><td>手动</td><td>Start=3</td><td>按需启动</td></tr><tr><td>禁用</td><td>Start=4</td><td>不启动</td></tr></tbody></table><section><h3>强行停止服务（当服务管理器灰色不可用时）<a href="#强行停止服务当服务管理器灰色不可用时"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;获取 PID</span></div></div><div><div><div>2</div></div><div><span>sc</span><span> queryex &lt;服务名称&gt;</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;杀掉进程</span></div></div><div><div><div>5</div></div><div><span>taskkill</span><span> /F /PID &lt;PID&gt;</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;修改启动类型</span></div></div><div><div><div>8</div></div><div><span>reg</span><span> add </span><span>"HKLM\SYSTEM\ControlSet001\Services\AppXSvc"</span><span> /v </span><span>Start</span><span> /t REG_DWORD /d </span><span>4</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;删除失败恢复动作</span></div></div><div><div><div>11</div></div><div><span>reg</span><span> delete </span><span>"HKLM\SYSTEM\ControlSet001\Services\AppXSvc"</span><span> /v FailureActions</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>方法对比总结<a href="#方法对比总结"><span>#</span></a></h2>

<table><thead><tr><th>方法</th><th>适合场景</th><th>能否跳过 UAC</th><th>复杂度</th></tr></thead><tbody><tr><td>注册表 Run</td><td>普通桌面程序</td><td>❌</td><td>⭐</td></tr><tr><td>启动目录</td><td>快速添加</td><td>❌</td><td>⭐</td></tr><tr><td>计划任务</td><td>需要管理员权限的程序</td><td>✅</td><td>⭐⭐</td></tr><tr><td>服务</td><td>后台守护程序</td><td>✅</td><td>⭐⭐⭐</td></tr></tbody></table></section>
<section><h2>技巧：开机自启的服务推荐关闭<a href="#技巧开机自启的服务推荐关闭"><span>#</span></a></h2><ul>
<li><strong>Connected User Experiences and Telemetry</strong>（DiagTrack）— 诊断跟踪，可以禁用</li>
</ul></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>选择哪种自启方式取决于你的需求：普通程序放注册表 Run，需要管理员权限又想跳过 UAC 就用计划任务，只有真正的后台服务才考虑注册为 Windows 服务。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E5%85%B3%E8%81%94%E6%9C%BA%E5%88%B6%E8%AF%A6%E8%A7%A3/</id>
      <title type="text">Windows 文件类型关联机制详解</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E6%96%87%E4%BB%B6%E7%B1%BB%E5%9E%8B%E5%85%B3%E8%81%94%E6%9C%BA%E5%88%B6%E8%AF%A6%E8%A7%A3/"/>
      <summary type="text">双击文件时 Windows 怎么知道该用哪个程序打开？assoc 和 ftype 命令背后是什么原理？手把手教你自定义文件关联。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>双击一个 <code>.txt</code> 文件，记事本打开了。这背后是 Windows 文件关联机制在起作用。理解这个机制，你就能自定义任何文件后缀的打开方式，甚至创建自己的文件类型。</p></section>
<section><h2>关联机制的两步走<a href="#关联机制的两步走"><span>#</span></a></h2><p>Windows 的文件关联分两步：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>双击 .txt 文件</span></div></div><div><div><div>2</div></div><div><span><span>    </span></span><span>↓</span></div></div><div><div><div>3</div></div><div><span>assoc .txt  → 查到 .txt=txtfile    ← 第一步：后缀 → 文件类型</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>↓</span></div></div><div><div><div>5</div></div><div><span>ftype txtfile → 查到打开命令        ← 第二步：文件类型 → 程序</span></div></div><div><div><div>6</div></div><div><span><span>    </span></span><span>↓</span></div></div><div><div><div>7</div></div><div><span>用记事本打开</span></div></div></code></pre><div><div></div><div></div></div></figure></div><section><h3>命令行工具<a href="#命令行工具"><span>#</span></a></h3>

<table><thead><tr><th>命令</th><th>作用</th></tr></thead><tbody><tr><td><code>assoc</code></td><td>显示所有后缀关联</td></tr><tr><td><code>assoc .txt</code></td><td>查询 .txt 对应的文件类型</td></tr><tr><td><code>ftype</code></td><td>显示所有文件类型的打开命令</td></tr><tr><td><code>ftype txtfile</code></td><td>查询 txtfile 类型的关联程序</td></tr></tbody></table></section><section><h3>实际演示<a href="#实际演示"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>assoc</span><span> .txt     → .txt=txtfile</span></div></div><div><div><div>2</div></div><div><span>assoc</span><span> .doc     → .doc=Word.Document.8</span></div></div><div><div><div>3</div></div><div><span>assoc</span><span> .exe     → .exe=exefile</span></div></div><div><div><div>4</div></div><div><span>ftype</span><span> exefile  → exefile=</span><span><span>"</span><span>%</span></span><span>1</span><span>"</span><span><span> </span><span>%*</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>修改关联也简单：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;将 .txt 关联到 Word</span></div></div><div><div><div>2</div></div><div><span>assoc</span><span> .txt=Word.Document.8</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;恢复为记事本</span></div></div><div><div><div>5</div></div><div><span>assoc</span><span> .txt=txtfile</span></div></div></code></pre><div><div></div><div></div></div></figure></div><blockquote><p><strong>注意：</strong> <code>assoc</code> 和 <code>ftype</code> 是 cmd 的内部命令，PowerShell 需要 <code>cmd /c assoc</code> 才能使用。</p></blockquote></section></section>
<section><h2>注册表方式：创建自定义文件类型<a href="#注册表方式创建自定义文件类型"><span>#</span></a></h2><p>命令行虽然方便，但注册表方式更灵活——可以自定义图标、右键菜单文字、文件类型描述等。</p><section><h3>创建一个 .aaa 文件类型（用记事本打开）<a href="#创建一个-aaa-文件类型用记事本打开"><span>#</span></a></h3><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Windows Registry Editor Version 5.00</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>;告诉系统 .aaa 后缀对应 aaa_test_file 类型</span></div></div><div><div><div>4</div></div><div><span>[HKEY_CLASSES_ROOT\.aaa]</span></div></div><div><div><div>5</div></div><div><span>@</span><span>="</span><span>aaa_test_file</span><span>"</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;定义打开命令</span></div></div><div><div><div>8</div></div><div><span>[HKEY_CLASSES_ROOT\aaa_test_file\shell\open\command]</span></div></div><div><div><div>9</div></div><div><span>@</span><span>="</span><span>\"C:\\Windows\\System32\\notepad.exe\" \"%1\"</span><span>"</span></div></div><div><div><div>10</div></div><div>
</div></div><div><div><div>11</div></div><div><span>;（可选）文件类型描述</span></div></div><div><div><div>12</div></div><div><span>[HKEY_CLASSES_ROOT\aaa_test_file]</span></div></div><div><div><div>13</div></div><div><span>@</span><span>="</span><span>假的文件</span><span>"</span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>;（可选）自定义图标</span></div></div><div><div><div>16</div></div><div><span>[HKEY_CLASSES_ROOT\aaa_test_file\DefaultIcon]</span></div></div><div><div><div>17</div></div><div><span>@</span><span>=""</span></div></div><div><div><div>18</div></div><div>
</div></div><div><div><div>19</div></div><div><span>;（可选）自定义右键默认文字</span></div></div><div><div><div>20</div></div><div><span>[HKEY_CLASSES_ROOT\aaa_test_file\shell\open]</span></div></div><div><div><div>21</div></div><div><span>@</span><span>="</span><span>让我瞅瞅(&amp;O)</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>导入后，双击 <code>.aaa</code> 文件就会用记事本打开，右键菜单显示”让我瞅瞅”。</p></section><section><h3>清除关联<a href="#清除关联"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Windows Registry Editor Version 5.00</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>[-HKEY_CLASSES_ROOT\.aaa]</span></div></div><div><div><div>4</div></div><div><span>[-HKEY_CLASSES_ROOT\aaa_test_file]</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>修改 exe 文件的”打开”文字<a href="#修改-exe-文件的打开文字"><span>#</span></a></h2><p>如果你想搞怪，可以把 exe 文件的右键”打开”改成”运行”：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CLASSES_ROOT\exefile\shell\open]</span></div></div><div><div><div>2</div></div><div><span>@</span><span>="</span><span>运行(&amp;O)</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>Windows 文件关联的机制其实很清晰：<code>assoc</code> 连接后缀和类型，<code>ftype</code> 连接类型和程序。如果需要更高级的自定义（图标、描述、右键菜单），直接操作注册表 <code>HKCR</code> 即可。</p><blockquote><p>动手试一下：创建一个 <code>.笔记</code> 后缀，用 VS Code 打开——日常工作中很实用。</p></blockquote></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E6%96%87%E4%BB%B6%E8%B5%84%E6%BA%90%E7%AE%A1%E7%90%86%E5%99%A8/</id>
      <title type="text">Windows  文件资源管理器（Explorer）</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E6%96%87%E4%BB%B6%E8%B5%84%E6%BA%90%E7%AE%A1%E7%90%86%E5%99%A8/"/>
      <summary type="text">从符号链接到镜像劫持，从隐藏文件夹到任务栏美化，30+ 个实用技巧让你的 Windows Explorer 更好用。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>文件资源管理器是 Windows 中使用频率最高的工具之一。本文汇集了大量实用技巧，从符号链接到镜像劫持，从隐藏系统文件夹到控制面板速查，帮你把 Explorer 调教得得心应手。</p></section>
<section><h2>一、符号链接、硬链接与目录链接<a href="#一符号链接硬链接与目录链接"><span>#</span></a></h2><p><code>mklink</code> 是 Windows 上一个非常强大的工具，可以创建各种”链接”文件，解决磁盘空间不足、目录迁移等问题。</p><section><h3>命令格式<a href="#命令格式"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>MKLINK</span><span> [[/D] | [/H] | [/J]] Link Target</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>四种链接类型对比<a href="#四种链接类型对比"><span>#</span></a></h3>

<table><thead><tr><th>类型</th><th>参数</th><th>适用对象</th><th>跨分区</th><th>特点</th></tr></thead><tbody><tr><td>文件符号链接</td><td>（无）</td><td>文件</td><td>✅</td><td>类似快捷方式，但对应用透明</td></tr><tr><td>目录符号链接</td><td><code>/D</code></td><td>目录</td><td>✅</td><td>创建 <code>.SYMLINKD</code>，移动后仍保持引用</td></tr><tr><td>文件硬链接</td><td><code>/H</code></td><td>文件</td><td>❌</td><td>同一文件的多个名字，删除一个不影响</td></tr><tr><td>目录链接</td><td><code>/J</code></td><td>目录</td><td>仅本地</td><td>创建 <code>.JUNCTION</code>，注意移动会搬走源文件</td></tr></tbody></table></section><section><h3>实战场景<a href="#实战场景"><span>#</span></a></h3><p><strong>把 Steam 游戏目录映射到另一个盘：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>mklink</span><span> /D </span><span>"E:\epic\GTAV"</span><span> </span><span>"E:\steam\steamapps\common\Grand Theft Auto V"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>把 Android Studio 项目链接到桌面：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>mklink</span><span> /D </span><span>"C:\Users\zelda\Desktop\AndroidStudio"</span><span> </span><span>"E:\code\AndroidStudio"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>把 GTA 自定义电台音乐链接过来：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>mklink</span><span> /D </span><span>"C:\Users\zelda\Documents\Rockstar Games\GTA V\User Music"</span><span> </span><span>"D:\media\music\GTAV User Music Link"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>注意事项<a href="#注意事项"><span>#</span></a></h3><ol>
<li><strong>硬链接上限：</strong> Windows 下 1024 次，Linux 下 65535 次</li>
<li><strong>删除链接：</strong> 像删除普通文件一样删除链接本身，不会影响源文件</li>
<li><strong>管理员权限：</strong> 创建符号链接需要管理员权限（硬链接 <code>/H</code> 不需要）</li>
<li><strong>推荐工具：</strong> <a href="https://schinagl.priv.at/nt/hardlinkshellext/hardlinkshellext.html" target="_blank">Link Shell Extension</a> — 图形化操作各类链接</li>
</ol></section></section>
<section><h2>二、映像劫持（Image File Execution Options）<a href="#二映像劫持image-file-execution-options"><span>#</span></a></h2><p>映像劫持是 Windows 的调试功能，可以在一个程序启动时拦截并执行其他命令。利用得当，它能做很多有趣的事。</p><section><h3>注册表位置<a href="#注册表位置"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\&lt;程序名.exe&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>1. 劫持 Chrome 的 software_reporter_tool<a href="#1-劫持-chrome-的-software_reporter_tool"><span>#</span></a></h3><p>Chrome 每次更新后都会运行 <code>software_reporter_tool.exe</code>，扫个盘，占 CPU。劫持掉它：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\software_reporter_tool.exe]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>Debugger</span><span>"="</span><span>cmd.exe /c echo Chrome 启动 software_reporter_tool.exe 了&amp;pause</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>2. 记录命令行调用参数<a href="#2-记录命令行调用参数"><span>#</span></a></h3><p>不知道哪个程序在偷偷调用 cmd？劫持它记录下来：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;劫持 cmd.exe，记录参数到桌面日志</span></div></div><div><div><div>2</div></div><div><span>[HKEY_LOCAL_MACHINE\...\Image File Execution Options\cmd.exe]</span></div></div><div><div><div>3</div></div><div><span>"</span><span>Debugger</span><span>"="</span><span>cmd.exe /c echo %*&gt;&gt;C:\\Users\\misaka\\Desktop\\invokecmd.log&amp;pause</span><span>"</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>;劫持 powershell.exe</span></div></div><div><div><div>6</div></div><div><span>[HKEY_LOCAL_MACHINE\...\Image File Execution Options\powershell.exe]</span></div></div><div><div><div>7</div></div><div><span>"</span><span>Debugger</span><span>"="</span><span>cmd.exe /c echo %*&gt;&gt;C:\\Users\\misaka\\Desktop\\invokeps.log&amp;pause</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>3. 添加/删除劫持的 CMD 命令<a href="#3-添加删除劫持的-cmd-命令"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;添加</span></div></div><div><div><div>2</div></div><div><span>reg</span><span> add </span><span>"HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\软件名.exe"</span><span> /v </span><span>"Debugger"</span><span> /d </span><span><span>"cmd /c echo 启动 </span><span>%</span></span><span>date</span><span><span>%</span><span> </span><span>%</span></span><span>time</span><span><span>%</span><span>&gt;&gt;log.txt"</span></span><span> /t REG_SZ /f</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;删除</span></div></div><div><div><div>5</div></div><div><span>reg</span><span> delete </span><span>"HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\软件名.exe"</span><span> /f</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>4. 右键菜单添加映像劫持<a href="#4-右键菜单添加映像劫持"><span>#</span></a></h3><p>在 <code>.exe</code> 右键菜单添加”调试”子菜单，包含开启/关闭/自定义劫持：</p><p><strong>添加：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CLASSES_ROOT\exefile\shell\debugger]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>MUIVerb</span><span>"="</span><span>调试</span><span>"</span></div></div><div><div><div>3</div></div><div><span>"</span><span>SubCommands</span><span>"="</span><span>Ondebugger;Nodebugger;Zdydebugger</span><span>"</span></div></div><div><div><div>4</div></div><div><span>"</span><span>icon</span><span>"="</span><span>%systemroot%\\system32\\imageres.dll,102</span><span>"</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Ondebugger]</span></div></div><div><div><div>7</div></div><div><span>@</span><span>="</span><span>开启劫持(&amp;Y)</span><span>"</span></div></div><div><div><div>8</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Ondebugger\command]</span></div></div><div><div><div>9</div></div><div><span>@</span><span>="</span><span>cmd /c for /f \"delims=\" %%t in ('dir /b \"%1\"') do reg add \"HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Image File Execution Options\\%%t\\\" /f /v \"debugger\" /t REG_SZ /d \"\\\\\"\"</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>删除：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[-HKEY_CLASSES_ROOT\exefile\shell\debugger]</span></div></div><div><div><div>2</div></div><div><span>[-HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Ondebugger]</span></div></div><div><div><div>3</div></div><div><span>[-HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Zdydebugger]</span></div></div><div><div><div>4</div></div><div><span>[-HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\Nodebugger]</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>三、用映像劫持替换记事本（Notepad3）<a href="#三用映像劫持替换记事本notepad3"><span>#</span></a></h2><p>用 Notepad3 替代系统记事本，享受更好的编辑体验：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>Debugger</span><span>"="</span><span>\"C:\\Program Files\\Notepad3\\Notepad3.exe\" /z</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>同时添加右键 “Open with Notepad3”：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CLASSES_ROOT\*\shell\Open with Notepad3]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>C:\\Program Files\\Notepad3\\Notepad3.exe,0</span><span>"</span></div></div><div><div><div>3</div></div><div><span>@</span><span>="</span><span>Open with Notepad3</span><span>"</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>[HKEY_CLASSES_ROOT\*\shell\Open with Notepad3\command]</span></div></div><div><div><div>6</div></div><div><span>@</span><span>="</span><span>\"C:\\Program Files\\Notepad3\\Notepad3.exe\" \"%1\"</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>四、隐藏此电脑中的系统文件夹<a href="#四隐藏此电脑中的系统文件夹"><span>#</span></a></h2><p>“此电脑”里默认有视频、图片、文档、下载、音乐、桌面、3D 对象 7 个文件夹。如果你不用它们，可以隐藏：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{0ddd015d-b06c-45d5-8c4c-f59713854639}\PropertyBag]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>3</div></div><div><span>; Local Pictures</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{a0c69a99-21c8-4671-8703-7934162fcf1d}\PropertyBag]</span></div></div><div><div><div>6</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>7</div></div><div><span>; Local Music</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{35286a68-3c57-41a1-bbb1-0eae73d76c95}\PropertyBag]</span></div></div><div><div><div>10</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>11</div></div><div><span>; Local Videos</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{f42ee2d3-909f-4907-8871-4c22fc0bf756}\PropertyBag]</span></div></div><div><div><div>14</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>15</div></div><div><span>; Local Documents</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{7d83ee9b-2244-4e70-b1f5-5393042af1e4}\PropertyBag]</span></div></div><div><div><div>18</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>19</div></div><div><span>; Local Downloads</span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div>21</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}\PropertyBag]</span></div></div><div><div><div>22</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>23</div></div><div><span>; Desktop</span></div></div><div><div><div>24</div></div><div>
</div></div><div><div><div>25</div></div><div><span>[HKEY_LOCAL_MACHINE\...\FolderDescriptions\{31C0DD25-9439-4F12-BF41-7FF4EDA38722}\PropertyBag]</span></div></div><div><div><div>26</div></div><div><span>"</span><span>ThisPCPolicy</span><span>"="</span><span>Hide</span><span>"</span></div></div><div><div><div>27</div></div><div><span>; 3D Objects</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section>
<section><h2>五、隐藏此电脑左侧导航栏第三方图标<a href="#五隐藏此电脑左侧导航栏第三方图标"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\Namespace</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>第三方软件（爱奇艺、百度网盘、WPS）的图标也多在此处注册，删除对应子项即可。</p></section>
<section><h2>六、IDM 右键菜单开关<a href="#六idm-右键菜单开关"><span>#</span></a></h2><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\SOFTWARE\DownloadManager\menuExt]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>ffdownl1_v</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span><span>  </span><span>; 1=开 2=关</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>七、Explorer 打开路径参数<a href="#七explorer-打开路径参数"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>C:\Windows\explorer.exe</span></div></div><div><div><div>2</div></div><div><span>/n         新建窗格</span></div></div><div><div><div>3</div></div><div><span>/e         默认视图</span></div></div><div><div><div>4</div></div><div><span><span>/e,</span><span>%1</span><span>      默认视图 + 定位焦点</span></span></div></div><div><div><div>5</div></div><div><span><span>/root,</span><span>%1</span><span>   打开指定对象窗口视图</span></span></div></div><div><div><div>6</div></div><div><span><span>/select,</span><span>%1</span><span> 打开窗口并选中指定文件</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><section><h3>设置默认打开”此电脑”<a href="#设置默认打开此电脑"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>查看 → 选项 → 文件资源管理器选项 → 常规 → 打开文件资源管理器时打开 → 选择"此电脑"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>八、任务栏美化<a href="#八任务栏美化"><span>#</span></a></h2><section><h3>模糊透明<a href="#模糊透明"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>EnableTransparency</span><span>"=</span><span>dword</span><span>:</span><span>00000001</span></div></div><div><div><div>3</div></div><div><span>"</span><span>AppsUseLightTheme</span><span>"=</span><span>dword</span><span>:</span><span>00000001</span></div></div><div><div><div>4</div></div><div><span>"</span><span>SystemUsesLightTheme</span><span>"=</span><span>dword</span><span>:</span><span>00000001</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>禁用 Explorer 预读 .dat 文件<a href="#禁用-explorer-预读-dat-文件"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[-HKEY_CLASSES_ROOT\.dat\ShellEx\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}]</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>九、常用操作脚本<a href="#九常用操作脚本"><span>#</span></a></h2><p><strong>刷新壁纸（不重启 Explorer）：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>RunDll32</span><span> USER32.DLL,UpdatePerUserSystemParameters</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>重启 Explorer：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>taskkill</span><span> /f /im explorer.exe &amp; </span><span>start</span><span> explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>修复桌面图标缓存：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>del</span><span> </span><span>%userprofile%</span><span>\AppData\Local\IconCache.db /Q /F</span></div></div><div><div><div>2</div></div><div><span>taskkill</span><span> /im explorer.exe /f &amp; explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十、控制面板 CPL 命令速查<a href="#十控制面板-cpl-命令速查"><span>#</span></a></h2>

<table><thead><tr><th>命令</th><th>功能</th></tr></thead><tbody><tr><td><code>appwiz.cpl</code></td><td>程序和功能</td></tr><tr><td><code>bthprops.cpl</code></td><td>蓝牙设置</td></tr><tr><td><code>desk.cpl</code></td><td>显示设置</td></tr><tr><td><code>firewall.cpl</code></td><td>Windows Defender 防火墙</td></tr><tr><td><code>hdwwiz.cpl</code></td><td>设备管理器</td></tr><tr><td><code>inetcpl.cpl</code></td><td>Internet 属性</td></tr><tr><td><code>intl.cpl</code></td><td>区域</td></tr><tr><td><code>joy.cpl</code></td><td>游戏控制器</td></tr><tr><td><code>main.cpl @0</code></td><td>鼠标属性</td></tr><tr><td><code>main.cpl @1</code></td><td>键盘属性</td></tr><tr><td><code>mmsys.cpl</code></td><td>声音</td></tr><tr><td><code>ncpa.cpl</code></td><td>网络适配器</td></tr><tr><td><code>powercfg.cpl</code></td><td>电源选项</td></tr><tr><td><code>sysdm.cpl</code></td><td>系统属性</td></tr><tr><td><code>systempropertiesadvanced.exe</code></td><td>系统属性（高级）</td></tr><tr><td><code>timedate.cpl</code></td><td>时间和日期</td></tr><tr><td><code>wscui.cpl</code></td><td>安全和维护</td></tr></tbody></table><section><h3>完全控制面板<a href="#完全控制面板"><span>#</span></a></h3><p>在文件夹命名时使用以下 CLSID，可以直接打开”所有控制面板项”（上帝模式）：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>.{ED7BA470-8E54-465E-825C-99712043E01C}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>十一、磁盘管理隐藏 U 盘 EFI 分区<a href="#十一磁盘管理隐藏-u-盘-efi-分区"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>diskpart</span></div></div><div><div><div>2</div></div><div><span>lis dis           ;列出所有磁盘</span></div></div><div><div><div>3</div></div><div><span>sel dis </span><span>2</span><span>         ;选择 U 盘</span></div></div><div><div><div>4</div></div><div><span>lis par           ;列出所有分区</span></div></div><div><div><div>5</div></div><div><span>sel par </span><span>2</span><span>         ;选择 EFI 分区</span></div></div><div><div><div>6</div></div><div><span>set</span><span> </span><span>id</span><span>=</span><span>06</span><span>         ;取消分区隐藏</span></div></div><div><div><div>7</div></div><div><span>remove letter=k   ;移除盘符</span></div></div><div><div><div>8</div></div><div><span>set</span><span> </span><span>id</span><span>=</span><span>16</span><span>         ;重新隐藏</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十二、自定义 CMD 窗口<a href="#十二自定义-cmd-窗口"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>@</span><span>title</span><span> 窗口标题</span></div></div><div><div><div>3</div></div><div><span>color</span><span> 3f          ;背景色+字体色</span></div></div><div><div><div>4</div></div><div><span>cls</span></div></div><div><div><div>5</div></div><div><span>MODE</span><span> con: COLS=</span><span>77</span><span> LINES=</span><span>36</span></div></div><div><div><div>6</div></div><div><span>pause</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>颜色代码：</strong> 0=黑 1=蓝 2=绿 3=浅蓝 4=红 5=紫 6=黄 7=白 8=灰 9=淡蓝 A=淡绿 B=淡青 C=淡红 D=淡紫 E=淡黄 F=亮白</p></section>
<section><h2>十三、路径检测（PowerShell）<a href="#十三路径检测powershell"><span>#</span></a></h2><p>检测指定目录下超过 260 字符路径的文件：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>$startPath</span><span><span> </span><span>=</span><span> </span></span><span>"F:\mods\l4d2"</span></div></div><div><div><div>2</div></div><div><span>$maxLength</span><span><span> </span><span>=</span><span> </span></span><span>260</span></div></div><div><div><div>3</div></div><div><span>Get-ChildItem</span><span><span> </span><span>-</span><span>Path </span></span><span>$startPath</span><span><span> </span><span>-</span><span>Recurse </span><span>-</span><span>File </span><span>-</span><span>Force | </span></span><span>ForEach-Object</span><span> {</span></div></div><div><div><div>4</div></div><div><span>    </span><span>$fullPath</span><span><span> </span><span>=</span><span> $_</span></span><span>.FullName</span></div></div><div><div><div>5</div></div><div><span>    </span><span>if</span><span> (</span><span>$fullPath.Length</span><span><span> </span><span>-gt</span><span> </span></span><span>$maxLength</span><span>) {</span></div></div><div><div><div>6</div></div><div><span><span>        </span></span><span>[</span><span>PSCustomObject</span><span>]</span><span>@</span><span>{</span></div></div><div><div><div>7</div></div><div><span>            </span><span>'文件名'</span><span><span>   </span><span>=</span><span> $_</span></span><span>.Name</span></div></div><div><div><div>8</div></div><div><span>            </span><span>'完整路径'</span><span><span> </span><span>=</span><span> </span></span><span>$fullPath</span></div></div><div><div><div>9</div></div><div><span>            </span><span>'路径长度'</span><span><span> </span><span>=</span><span> </span></span><span>$fullPath.Length</span></div></div><div><div><div>10</div></div><div><span><span>        </span></span><span>}</span></div></div><div><div><div>11</div></div><div><span><span>    </span></span><span>}</span></div></div><div><div><div>12</div></div><div><span>} | </span><span>Out-GridView</span><span><span> </span><span>-</span><span>Title </span></span><span>"路径过长的文件列表"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>修改文件时间<a href="#修改文件时间"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span># 批量修改</span></div></div><div><div><div>2</div></div><div><span>Get-ChildItem</span><span><span> </span><span>-</span><span>Path </span></span><span>'E:\game\...'</span><span><span> </span><span>-</span><span>Recurse | </span></span><span>foreach-object</span><span>{</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>$_</span><span>.LastWriteTime</span><span>=</span><span>"2020/11/13 16:00"</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>$_</span><span>.CreationTime</span><span>=</span><span>"2020/11/13 16:00"</span></div></div><div><div><div>5</div></div><div><span>}</span></div></div><div><div><div>6</div></div><div><span># 单个文件</span></div></div><div><div><div>7</div></div><div><span>(</span><span>Get-Item</span><span> </span><span>'E:\1.txt'</span><span><span>).LastWriteTime</span><span>=</span></span><span>"2020/11/13 16:00"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>文件资源管理器的可定制程度远超你的想象。符号链接解决磁盘空间问题，映像劫持拦截不想要的程序行为，注册表清理系统文件夹的杂乱——每掌握一个技巧，Windows 就变得顺手一分。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E6%B3%A8%E5%86%8C%E8%A1%A8%E4%BC%98%E5%8C%96/</id>
      <title type="text">Windows 注册表优化完全汇编</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E6%B3%A8%E5%86%8C%E8%A1%A8%E4%BC%98%E5%8C%96/"/>
      <summary type="text">从系统清理到个性化定制，从硬件加速到网络优化，60+ 个注册表优化项的全方位整理。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>注册表是 Windows 的”中枢神经”。很多系统行为没有图形界面开关，只能通过注册表修改。本文整理了多年积累的注册表优化项，涵盖系统清理、个性化、性能优化、硬件调整、网络设置等各个方面。</p><blockquote><p>⚠️ <strong>修改注册表前请备份！</strong> 建议先导出整个分支再操作。误删可能导致系统异常。</p></blockquote></section>
<section><h2>一、系统清理<a href="#一系统清理"><span>#</span></a></h2><section><h3>1. 清除多余的 DLL 文件<a href="#1-清除多余的-dll-文件"><span>#</span></a></h3><p>共享 DLL 引用计数为 0 的可以删除：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ShareDlls</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>括号内数字为共享引用计数，为 0 则说明已无程序使用。</p></section><section><h3>2. 安装卸载残留信息<a href="#2-安装卸载残留信息"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software</span></div></div><div><div><div>2</div></div><div><span>HKLM\Software</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>3. 删除多余时区（只留北京）<a href="#3-删除多余时区只留北京"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>只保留 <code>China Standard Time</code>，其余删除。</p></section><section><h3>4. 清除国家列表（只留中国）<a href="#4-清除国家列表只留中国"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Telephony\Country List</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>86 号文件夹是中国，其余可删。</p></section><section><h3>5. 清除多余语言代码（只留中英文）<a href="#5-清除多余语言代码只留中英文"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\CurrentControlSet\Control\Nls\Locale</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>保留 <code>0409</code>（英语）和 <code>0804</code>（中文）。</p></section><section><h3>6. 删除多余的键盘布局<a href="#6-删除多余的键盘布局"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\CurrentControlSet\Control\Keyboard Layouts</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>二、个性化设置<a href="#二个性化设置"><span>#</span></a></h2><section><h3>1. 去掉桌面快捷方式小箭头<a href="#1-去掉桌面快捷方式小箭头"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKEY_CLASSES_ROOT\LNKFILE</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>删除 <code>IsShortcut</code> 键。</p></section><section><h3>2. 隐藏桌面所有图标<a href="#2-隐藏桌面所有图标"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\Windows\CurrentVersion\Policies\Explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>NoDesktop</code>（REG_DWORD）= 1</p></section><section><h3>3. 修改回收站名称及图标<a href="#3-修改回收站名称及图标"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Classes\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>修改 <code>(默认)</code> 为新名称，<code>DefaultIcon</code> 子项中修改图标路径。</p></section><section><h3>4. 去掉桌面网上邻居<a href="#4-去掉桌面网上邻居"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\...\Policies\Explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>NoNetHood</code>（REG_DWORD）= 1</p></section><section><h3>5. 桌面显示系统版本号<a href="#5-桌面显示系统版本号"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Control Panel\Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>PaintDesktopVersion</code> = 1</p></section><section><h3>6. 改变窗口按钮字体颜色<a href="#6-改变窗口按钮字体颜色"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Control Panel\Colors</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>ButtonText</code> = 如 <code>255 0 0</code>（红色）</p></section><section><h3>7. 屏蔽桌面 IE 图标<a href="#7-屏蔽桌面-ie-图标"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\...\Policies\Explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>NoInternetIcon</code>（REG_DWORD）= 1</p></section><section><h3>8. 禁止更改桌面壁纸<a href="#8-禁止更改桌面壁纸"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\...\Policies\Explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>NoChangingWallPaper</code>（REG_DWORD）= 1</p></section><section><h3>9. 设置登录背景<a href="#9-设置登录背景"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKU\.DEFAULT\Control Panel\Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>WallPaper</code> = 图片完整路径</p></section><section><h3>10-14. 更改系统图标提示信息<a href="#10-14-更改系统图标提示信息"><span>#</span></a></h3>

<table><thead><tr><th>项目</th><th>注册表位置</th></tr></thead><tbody><tr><td>我的电脑</td><td><code>HKCR\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}</code></td></tr><tr><td>回收站</td><td><code>HKCR\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}</code></td></tr><tr><td>IE</td><td><code>HKCR\CLSID\{871C5380-42A0-1069-A2EA-08002B30309D}</code></td></tr><tr><td>网上邻居</td><td><code>HKCR\CLSID\{208D2C60-3AEA-1069-A2D7-08002B30309D}</code></td></tr><tr><td>我的文档</td><td><code>HKCR\CLSID\{450D8FBA-AD25-11D0-98A8-0800361B1103}</code></td></tr></tbody></table><p>修改对应 <code>InfoTip</code> 键值为你想要显示的文字。</p></section><section><h3>15. 更改桌面图标顺序<a href="#15-更改桌面图标顺序"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Classes\CLSID\{450D8FBA-AD25-11D0-98A8-0800361B1103}</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>SortOrderIndex</code> = 48（我的文档第一）/ 54（我的电脑第一）</p></section><section><h3>16. 禁止帮助提示信息<a href="#16-禁止帮助提示信息"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\...\Explorer\Advanced</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>showinfotip</code> = 0</p></section><section><h3>17. 真彩色显示图标<a href="#17-真彩色显示图标"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Control Panel\Desktop\WindowMetrics</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>Shell Icon BPP</code> = 32</p></section><section><h3>18. 更改图标显示尺寸<a href="#18-更改图标显示尺寸"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Control Panel\Desktop\WindowMetrics</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>Shell Icon SIZE</code> = 48（1024×768）/ 64（1600×1200）</p></section><section><h3>19-26. 开始菜单设置<a href="#19-26-开始菜单设置"><span>#</span></a></h3><p>以下都在 <code>HKCU\Software\...\Policies\Explorer</code>：</p>

<table><thead><tr><th>功能</th><th>键名</th><th>值</th></tr></thead><tbody><tr><td>自动清除文档历史</td><td><code>CleanRecentDocsOnExit</code></td><td>1</td></tr><tr><td>禁止文档历史</td><td><code>NoRecentDocsHistory</code></td><td>1</td></tr><tr><td>去掉”文档”</td><td><code>NoRecentDocsMenu</code></td><td>1</td></tr><tr><td>去掉”查找”</td><td><code>NoFind</code></td><td>1</td></tr><tr><td>去掉”运行”</td><td><code>NoRun</code></td><td>1</td></tr><tr><td>禁止更改开始菜单</td><td><code>NoChangeStartMenu</code></td><td>1</td></tr><tr><td>隐藏 Windows Update</td><td><code>NoWindowsUpdate</code></td><td>1</td></tr><tr><td>屏蔽”关闭计算机”</td><td><code>NoClose</code></td><td>1</td></tr></tbody></table></section><section><h3>27. 加快菜单显示速度<a href="#27-加快菜单显示速度"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Control Panel\Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>MenuShowDelay</code> = 100 或更小（默认 400）</p></section><section><h3>28. 回收站右键菜单增加”删除”和”重命名”<a href="#28-回收站右键菜单增加删除和重命名"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCR\CLSID\{645FF040-5081-101B-9F08-00AA002F954E}\ShellFolder</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>Attributes</code> = <code>70 01 00 20</code></p></section><section><h3>29-30. 右键菜单添加项目<a href="#29-30-右键菜单添加项目"><span>#</span></a></h3><p><strong>在新窗口打开：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\...\Directory\shell\NewWindow\command</span></div></div><div><div><div>2</div></div><div><span>@="explorer.exe"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>快速关闭计算机：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\...\Directory\shell\快速关闭计算机\command</span></div></div><div><div><div>2</div></div><div><span>@="c:\windows\rundll32.exe user.exe,exitwindowsexec"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>31-33. 任务栏设置<a href="#31-33-任务栏设置"><span>#</span></a></h3>

<table><thead><tr><th>功能</th><th>路径</th><th>键值</th></tr></thead><tbody><tr><td>禁止任务栏右键菜单</td><td><code>...Policies\Explorer</code></td><td><code>NoTrayContextMenu</code> = 1</td></tr><tr><td>修改任务栏时间文字</td><td><code>...Control Panel\International</code></td><td><code>sTimeFormat</code></td></tr><tr><td>禁止使用任务栏</td><td><code>...Policies\Explorer</code></td><td><code>NoSetTaskBar</code> = 1</td></tr></tbody></table></section></section>
<section><h2>三、系统设置<a href="#三系统设置"><span>#</span></a></h2><section><h3>1-4. 控制面板显示设置屏蔽<a href="#1-4-控制面板显示设置屏蔽"><span>#</span></a></h3><p>均在 <code>HKCU\Software\...\Policies\System</code>：</p>

<table><thead><tr><th>功能</th><th>键名</th></tr></thead><tbody><tr><td>禁用”显示”选项</td><td><code>NodispCPL</code> = 1</td></tr><tr><td>屏蔽屏幕保护程序</td><td><code>NoDispScrSavPage</code> = 1</td></tr><tr><td>屏蔽外观</td><td><code>NoDispAppearancePage</code> = 1</td></tr><tr><td>屏蔽设置</td><td><code>NoDispSettingsPage</code> = 1</td></tr></tbody></table></section><section><h3>5. 屏蔽屏幕保护程序密码<a href="#5-屏蔽屏幕保护程序密码"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\Policies\Microsoft\Control Panel\Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>ScreenSaverIsSecure</code> = 1</p></section><section><h3>6-12. 添加删除程序设置屏蔽<a href="#6-12-添加删除程序设置屏蔽"><span>#</span></a></h3><p>均在 <code>HKCU\Software\...\Policies\Uninstall</code>：</p>

<table><thead><tr><th>功能</th><th>键名</th></tr></thead><tbody><tr><td>禁止使用添加删除程序</td><td><code>NoAddRemovePrograms</code> = 1</td></tr><tr><td>屏蔽更改或删除程序</td><td><code>NoRemovePage</code> = 1</td></tr><tr><td>屏蔽添加新程序</td><td><code>NoAddpage</code> = 1</td></tr><tr><td>屏蔽添加/删除组件</td><td><code>NoWindowsSetupPage</code> = 1</td></tr><tr><td>屏蔽支持信息</td><td><code>NoSupportInfo</code> = 1</td></tr><tr><td>屏蔽 CD-ROM 安装</td><td><code>NoAddFromCDorFloppy</code> = 1</td></tr><tr><td>屏蔽从 Microsoft 添加</td><td><code>NoAddFromInternet</code> = 1</td></tr></tbody></table></section><section><h3>13. 设置关机等待时间<a href="#13-设置关机等待时间"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\CurrentControlSet\Control</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>WaitToKillServiceTimeout</code> — 毫秒为单位，减小可加快关机速度。</p></section><section><h3>14-15. 系统启动<a href="#14-15-系统启动"><span>#</span></a></h3>

<table><thead><tr><th>功能</th><th>路径</th></tr></thead><tbody><tr><td>更改服务启动顺序</td><td><code>HKLM\SYSTEM\...\Control\ServiceGroupOrder</code></td></tr><tr><td>更改启动时运行的程序</td><td><code>HKLM\SYSTEM\...\Session Manager</code> → <code>BootExecute</code></td></tr></tbody></table></section><section><h3>16-18. 清理<a href="#16-18-清理"><span>#</span></a></h3>

<table><thead><tr><th>项目</th><th>路径</th></tr></thead><tbody><tr><td>删除多余 DLL</td><td><code>HKLM\SOFTWARE\...\SharedDlls</code></td></tr><tr><td>删除自启程序</td><td><code>HKLM\SOFTWARE\...\Run</code></td></tr><tr><td>清除注册表垃圾</td><td><code>HKLM\SOFTWARE\...\Uninstall</code></td></tr></tbody></table></section><section><h3>19. 自动刷新窗口<a href="#19-自动刷新窗口"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\...\Control\Update</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>UpdateMode</code> = 0（自动刷新）</p></section><section><h3>20-27. 更改目录位置<a href="#20-27-更改目录位置"><span>#</span></a></h3><p>在 <code>HKU\.DEFAULT\...\Explorer\Shell Folders</code> 中修改：</p>

<table><thead><tr><th>键名</th><th>说明</th></tr></thead><tbody><tr><td><code>Start Menu</code></td><td>开始菜单</td></tr><tr><td><code>Programs</code></td><td>程序</td></tr><tr><td><code>StartUp</code></td><td>启动</td></tr><tr><td><code>SendTo</code></td><td>发送到</td></tr><tr><td><code>History</code></td><td>历史记录</td></tr><tr><td><code>Personal</code></td><td>我的文档</td></tr><tr><td><code>Templates</code></td><td>新建文件模板</td></tr></tbody></table></section><section><h3>28-29. 在我的电脑中显示<a href="#28-29-在我的电脑中显示"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\...\Explorer\MyComputer\NameSpace</span></div></div></code></pre><div><div></div><div></div></div></figure></div><ul>
<li><code>{992CFFA0-F557-101A-88EC-00DD010CCC48}</code> — 网络连接</li>
<li><code>{2227A280-3AEA-1069-A2DE-08002B3039D}</code> — 打印机和传真</li>
</ul></section><section><h3>30. 开机启动优化（碎片整理）<a href="#30-开机启动优化碎片整理"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>Enable</code> = Y</p></section><section><h3>31. 加快程序运行速度<a href="#31-加快程序运行速度"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\...\Control\FileSystem</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>configfileallocsize</code> = <code>1f4</code></p></section><section><h3>32. 缩短关闭无响应程序等待时间<a href="#32-缩短关闭无响应程序等待时间"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKU\.DEFAULT\Control Panel\Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>WaitToKillTimeout</code> — 增大数值</p></section><section><h3>33. 关机时自动删除交换文件<a href="#33-关机时自动删除交换文件"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\ControlSet001\...\Memory Management</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>ClearPageFileAtShutdown</code> = 1</p></section><section><h3>34. 自动关闭计算机<a href="#34-自动关闭计算机"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\...\Winlogon</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>PowerdownAfterShutdown</code> = 1</p></section></section>
<section><h2>四、硬件设置<a href="#四硬件设置"><span>#</span></a></h2><section><h3>1. 启用 CPU 二级缓存<a href="#1-启用-cpu-二级缓存"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SYSTEM\...\Memory Management</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>secondleveldatacache</code> — 根据 CPU 型号设置（如 200）</p></section><section><h3>2-3. 修改 CPU 认证标识<a href="#2-3-修改-cpu-认证标识"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\HARDWARE\...\CentralProcessor\0</span></div></div></code></pre><div><div></div><div></div></div></figure></div><ul>
<li><code>ProcessorNameString</code> — 修改 CPU 名称（娱乐向）</li>
<li><code>VendorIdentifer</code> — 修改供应商标识</li>
</ul></section><section><h3>4. 清除内存中不使用的 DLL<a href="#4-清除内存中不使用的-dll"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\...\Explorer</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>新建 <code>Always UnloadDll</code>（REG_DWORD）= 1</p></section><section><h3>5. 启动自动优化磁盘<a href="#5-启动自动优化磁盘"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>Enable</code> = Yes</p></section></section>
<section><h2>五、杂项注册表修改<a href="#五杂项注册表修改"><span>#</span></a></h2><section><h3>不允许遥测<a href="#不允许遥测"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>AllowCommercialDataPipeline</span><span>"=</span><span>dword</span><span>:</span><span>00000000</span></div></div><div><div><div>3</div></div><div><span>"</span><span>AllowTelemetry</span><span>"=</span><span>dword</span><span>:</span><span>00000000</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>IE 浏览器主页设为空白页<a href="#ie-浏览器主页设为空白页"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>Start Page</span><span>"="</span><span>about:blank</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>蓝牙音箱绝对音量<a href="#蓝牙音箱绝对音量"><span>#</span></a></h3><p>禁用蓝牙绝对音量，解决音量无法调大的问题：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Bluetooth\Audio\AVRCP\CT]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>DisableAbsoluteVolume</span><span>"=</span><span>dword</span><span>:</span><span>00000001</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>登陆界面默认打开小键盘<a href="#登陆界面默认打开小键盘"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_USERS\.DEFAULT\Control Panel\Keyboard]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>InitialKeyboardIndicators</span><span>"="</span><span>2147483648</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>修复键盘驱动注册表<a href="#修复键盘驱动注册表"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span>写入 HKLM</span><span>\</span><span>SYST</span></span><span>E</span><span><span>M</span><span>\</span><span>...</span><span>\</span></span><span>C</span><span>l</span><span>a</span><span><span>ss</span><span>\</span><span>{</span></span><span>4d36e96b</span><span>-</span><span>e325</span><span>-</span><span>11ce</span><span>-</span><span>bfc1</span><span>-</span><span>08002be10318</span><span>}</span></div></div><div><div><div>2</div></div><div><span>下的各子项，包含 PS/</span><span>2</span><span> K</span><span>e</span><span>y</span><span>b</span><span>o</span><span>a</span><span>r</span><span>d</span><span> 和 HI</span><span>D</span><span> K</span><span>e</span><span>y</span><span>b</span><span>o</span><span>a</span><span>r</span><span>d</span><span> </span><span>De</span><span>vi</span><span>ce</span><span> 的驱动信息</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>自定义浏览器 URL 协议（clash://）<a href="#自定义浏览器-url-协议clash"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_CLASSES_ROOT\clash]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>URL Protocol</span><span>"=""</span></div></div><div><div><div>3</div></div><div><span>@</span><span>="</span><span>URL:clash</span><span>"</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>[HKEY_CLASSES_ROOT\clash\shell\open\command]</span></div></div><div><div><div>6</div></div><div><span>@</span><span>="</span><span>\"E:\\Program Files\\Clash for Windows\\Clash for Windows.exe\" \"%1\"</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>防火墙注册表项<a href="#防火墙注册表项"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>Windows Defender 禁用<a href="#windows-defender-禁用"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>删除以下两项：</p><ul>
<li><code>DisableAntiSpyware</code></li>
<li><code>DisableAntiVirus</code></li>
</ul></section><section><h3>网络列表（网络位置类型）<a href="#网络列表网络位置类型"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\...\NetworkList\Profiles</span></div></div><div><div><div>2</div></div><div><span>HKLM\SOFTWARE\...\NetworkList\Signatures\Unmanaged</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>注册表优化需要有的放矢。建议按需选择：</p><ul>
<li><strong>系统清理：</strong> 重装系统后一次性操作</li>
<li><strong>个性化：</strong> 按自己喜好调整</li>
<li><strong>系统设置：</strong> 适合追求精简和性能的用户</li>
<li><strong>硬件设置：</strong> 真实性存疑，部分优化效果可能微乎其微</li>
<li><strong>杂项：</strong> 解决具体问题的实用条目</li>
</ul><p>记住：注册表修改前一定要备份。一项错误的修改可能导致软件无法运行甚至系统不稳定。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E7%94%A8%E6%88%B7%E8%B4%A6%E6%88%B7%E6%8E%A7%E5%88%B6/</id>
      <title type="text">Windows 用户账户控制（UAC）指南</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E7%94%A8%E6%88%B7%E8%B4%A6%E6%88%B7%E6%8E%A7%E5%88%B6/"/>
      <summary type="text">深入理解 Windows UAC 机制，从等级设置到应用兼容性再到右键菜单快速切换运行权限，一篇搞定。</summary>
      <content type="html"><![CDATA[<section><h2>什么是 UAC？<a href="#什么是-uac"><span>#</span></a></h2><p>用户账户控制（User Account Control）是 Windows Vista 引入的安全机制，目的是防止未经授权的系统更改。当程序需要管理员权限时，UAC 会弹出对话框让你确认——这个弹窗你一定见过。</p><p>UAC 的核心思路是：即使你以管理员身份登录，应用程序默认也只获得标准用户权限，只有显式同意后才提升权限。这就像进门先刷卡，而不是大门敞开。</p></section>
<section><h2>UAC 四个等级<a href="#uac-四个等级"><span>#</span></a></h2><p>UAC 的等级由注册表中三个键值共同控制，位置在：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System</span></div></div></code></pre><div><div></div><div></div></div></figure></div>

<table><thead><tr><th>等级</th><th>ConsentPromptBehaviorAdmin</th><th>EnableLUA</th><th>PromptOnSecureDesktop</th></tr></thead><tbody><tr><td><strong>高</strong>（默认）</td><td>2</td><td>1</td><td>1</td></tr><tr><td><strong>中</strong></td><td>5</td><td>1</td><td>1</td></tr><tr><td><strong>低</strong></td><td>5</td><td>1</td><td>0</td></tr><tr><td><strong>关</strong></td><td>0</td><td>0</td><td>0</td></tr></tbody></table><p>三个键值的含义：</p>

<table><thead><tr><th>键名</th><th>作用</th></tr></thead><tbody><tr><td><code>ConsentPromptBehaviorAdmin</code></td><td>管理员提权时的通知强度</td></tr><tr><td><code>EnableLUA</code></td><td>UAC 总开关</td></tr><tr><td><code>PromptOnSecureDesktop</code></td><td>弹窗时桌面是否变黑（安全桌面）</td></tr></tbody></table><blockquote><p><strong>建议：</strong> 保持默认的”高”等级。关闭 UAC 不会让电脑变快，只会让恶意软件更容易拿到系统权限。</p></blockquote></section>
<section><h2>应用兼容性运行方式<a href="#应用兼容性运行方式"><span>#</span></a></h2><p>某些老程序需要特定兼容性设置才能正常工作。Windows 将兼容性设置存储在：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers</span></div></div></code></pre><div><div></div><div></div></div></figure></div><section><h3>常用运行方式值<a href="#常用运行方式值"><span>#</span></a></h3>

<table><thead><tr><th>值</th><th>含义</th></tr></thead><tbody><tr><td><code>WINXPSP3</code></td><td>以 XP 兼容模式运行</td></tr><tr><td><code>RUNASADMIN</code></td><td>以管理员身份运行</td></tr><tr><td><code>~ DPIUNAWAER</code></td><td>高 DPI 缩放覆盖</td></tr><tr><td><code>DWM8And16BitMitigation</code></td><td>简化的颜色模式（8/16位）</td></tr><tr><td><code>RUNASINVOKER</code></td><td>以调用者身份运行（不提权）</td></tr></tbody></table></section><section><h3>实用脚本<a href="#实用脚本"><span>#</span></a></h3><p><strong>设置为管理员运行：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>reg</span><span> add </span><span>"HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"</span><span> /v </span><span>"程序路径.exe"</span><span> /t REG_SZ /d </span><span>"~ RunAsAdmin"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>设置为调用者运行（不提权）：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>reg</span><span> add </span><span>"HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"</span><span> /v </span><span>"程序路径.exe"</span><span> /t REG_SZ /d </span><span>"~ RunAsInvoker"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>查询当前所有设置：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>reg</span><span> </span><span>query</span><span> </span><span>"HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>删除特定程序的兼容性设置：</strong></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>reg</span><span> delete </span><span>"HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers"</span><span> /v </span><span>"程序路径.exe"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>右键菜单：一键切换 UAC 运行方式<a href="#右键菜单一键切换-uac-运行方式"><span>#</span></a></h2><p>如果你经常需要在管理员/普通权限之间切换某个程序，每次改注册表太麻烦。可以给 <code>.exe</code> 文件的右键菜单加一个二级菜单，一键切换。</p><section><h3>注册表结构<a href="#注册表结构"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKLM\...\CommandStore\shell\RunAsMenu1~5   ← 定义 5 个菜单项</span></div></div><div><div><div>2</div></div><div><span>HKCR\exefile\shell\切换程序运行时UAC          ← 挂载到 exe 右键</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>菜单功能一览<a href="#菜单功能一览"><span>#</span></a></h3>

<table><thead><tr><th>菜单</th><th>功能</th></tr></thead><tbody><tr><td>RunAsMenu1</td><td>设置为 Invoker（调用者）运行</td></tr><tr><td>RunAsMenu2</td><td>设置为 Admin（管理员）运行</td></tr><tr><td>RunAsMenu3</td><td>查询此文件的当前设置</td></tr><tr><td>RunAsMenu4</td><td>恢复系统默认</td></tr><tr><td>RunAsMenu5</td><td>查询所有文件的设置</td></tr></tbody></table></section><section><h3>完整注册表脚本<a href="#完整注册表脚本"><span>#</span></a></h3><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Windows Registry Editor Version 5.00</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>;菜单1 - 设置为 Invoker</span></div></div><div><div><div>4</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu1]</span></div></div><div><div><div>5</div></div><div><span>@</span><span>="</span><span>Set Running as Invoker</span><span>"</span></div></div><div><div><div>6</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\shell32.dll\",43</span><span>"</span></div></div><div><div><div>7</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu1\command]</span></div></div><div><div><div>8</div></div><div><span>@</span><span>="</span><span>cmd.exe /c reg add \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" /t REG_SZ /d \"~ RunAsInvoker\" /F &amp;start \"\" \"%1\"&amp;Exit</span><span>"</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;菜单2 - 设置为 Administrator</span></div></div><div><div><div>11</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu2]</span></div></div><div><div><div>12</div></div><div><span>@</span><span>="</span><span>Set Running as Administrator</span><span>"</span></div></div><div><div><div>13</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\user32.dll\",6</span><span>"</span></div></div><div><div><div>14</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu2\command]</span></div></div><div><div><div>15</div></div><div><span>@</span><span>="</span><span>cmd.exe /c reg add \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" /t REG_SZ /d \"~ RunAsAdmin\" /F &amp;start \"\" \"%1\"&amp;Exit</span><span>"</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span>;菜单3 - 查询此文件</span></div></div><div><div><div>18</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu3]</span></div></div><div><div><div>19</div></div><div><span>@</span><span>="</span><span>Query This File</span><span>"</span></div></div><div><div><div>20</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\shell32.dll\",23</span><span>"</span></div></div><div><div><div>21</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu3\command]</span></div></div><div><div><div>22</div></div><div><span>@</span><span>="</span><span>cmd.exe /k reg query \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" &amp;Pause&amp;Exit</span><span>"</span></div></div><div><div><div>23</div></div><div>
</div></div><div><div><div>24</div></div><div><span>;菜单4 - 恢复系统默认</span></div></div><div><div><div>25</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu4]</span></div></div><div><div><div>26</div></div><div><span>@</span><span>="</span><span>Set to System Default</span><span>"</span></div></div><div><div><div>27</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\shell32.dll\",238</span><span>"</span></div></div><div><div><div>28</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu4\command]</span></div></div><div><div><div>29</div></div><div><span>@</span><span>="</span><span>cmd.exe /k reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" /F &amp;Exit</span><span>"</span></div></div><div><div><div>30</div></div><div>
</div></div><div><div><div>31</div></div><div><span>;菜单5 - 查询所有文件</span></div></div><div><div><div>32</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu5]</span></div></div><div><div><div>33</div></div><div><span>@</span><span>="</span><span>Query All Files</span><span>"</span></div></div><div><div><div>34</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\shell32.dll\",22</span><span>"</span></div></div><div><div><div>35</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\RunAsMenu5\command]</span></div></div><div><div><div>36</div></div><div><span>@</span><span>="</span><span>cmd.exe /k reg query \"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" &amp;Pause&amp;Exit</span><span>"</span></div></div><div><div><div>37</div></div><div>
</div></div><div><div><div>38</div></div><div><span>;将二级菜单挂载到 exe 右键</span></div></div><div><div><div>39</div></div><div><span>[HKEY_CLASSES_ROOT\exefile\shell\切换程序运行时UAC]</span></div></div><div><div><div>40</div></div><div><span>"</span><span>Icon</span><span>"="</span><span>\"C:\\Windows\\System32\\user32.dll\",6</span><span>"</span></div></div><div><div><div>41</div></div><div><span>"</span><span>SubCommands</span><span>"="</span><span>RunAsMenu1;RunAsMenu2;RunAsMenu3;RunAsMenu4;RunAsMenu5;</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>保存为 <code>.reg</code> 文件导入即可生效。之后在任意 <code>.exe</code> 上点右键 → “切换程序运行时 UAC” 就能看到这 5 个选项。</p></section></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>UAC 是 Windows 安全体系中重要的一环，理解它的工作原理能帮你更好地控制系统权限。本文介绍的兼容性设置和右键菜单方案，是日常使用中最高频的操作，建议收藏以备不时之需。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E7%B3%BB%E7%BB%9F%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%9C%8D%E5%8A%A1%E4%BC%98%E5%8C%96%E6%8C%87%E5%8D%97/</id>
      <title type="text">Windows 系统配置与服务优化指南</title>
      <published>2026-06-23T00:00:00.000Z</published>
      <updated>2026-06-23T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E7%B3%BB%E7%BB%9F%E9%85%8D%E7%BD%AE%E4%B8%8E%E6%9C%8D%E5%8A%A1%E4%BC%98%E5%8C%96%E6%8C%87%E5%8D%97/"/>
      <summary type="text">从服务管理到网络共享，从远程桌面加速到睡眠唤醒排查，系统级的配置优化全攻略。</summary>
      <content type="html"><![CDATA[<section><h2>引言<a href="#引言"><span>#</span></a></h2><p>系统配置是 Windows 优化中最有”技术感”的部分。服务管理、网络共享、远程桌面加速、休眠唤醒排查——这些配置直接影响系统的稳定性和使用体验。本文汇总了多年积累的系统级配置方案。</p></section>
<section><h2>一、服务管理<a href="#一服务管理"><span>#</span></a></h2><section><h3>强制修改服务启动类型<a href="#强制修改服务启动类型"><span>#</span></a></h3><p>大部分服务可以在服务管理器（<code>services.msc</code>）直接修改，但有些系统服务按钮是灰色的。这时可以通过注册表强制修改：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>rem</span><span> 停止服务</span></div></div><div><div><div>2</div></div><div><span>net stop</span><span> appxsvc</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>rem</span><span> 修改启动类型为禁用(4)</span></div></div><div><div><div>5</div></div><div><span>reg</span><span> add </span><span>"HKLM\SYSTEM\ControlSet001\Services\AppXSvc"</span><span> /v </span><span>Start</span><span> /t REG_DWORD /d </span><span>4</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>rem</span><span> 删除失败后的恢复动作（防止自动重启）</span></div></div><div><div><div>8</div></div><div><span>reg</span><span> delete </span><span>"HKLM\SYSTEM\ControlSet001\Services\AppXSvc"</span><span> /v FailureActions</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>AppX Deployment Service 禁用<a href="#appx-deployment-service-禁用"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\AppXSvc]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000003</span><span>  </span><span>; 3 = 手动</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>查询与停止驱动<a href="#查询与停止驱动"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;查询驱动状态</span></div></div><div><div><div>2</div></div><div><span>sc</span><span> </span><span>query</span><span> sysdiag</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;停止驱动（需要管理员权限）</span></div></div><div><div><div>5</div></div><div><span>sc</span><span> stop mhyprot2</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>二、网络共享<a href="#二网络共享"><span>#</span></a></h2><section><h3>恢复/自定义 IP 段<a href="#恢复自定义-ip-段"><span>#</span></a></h3><p>Windows 热点默认使用 <code>192.168.137.1</code>，可以自定义为其他网段：</p><p><strong>恢复默认：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>ScopeAddress</span><span>"="</span><span>192.168.137.1</span><span>"</span></div></div><div><div><div>3</div></div><div><span>"</span><span>ScopeAddressBackup</span><span>"="</span><span>192.168.137.1</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>自定义为 192.168.18.1：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>"</span><span>ScopeAddress</span><span>"="</span><span>192.168.18.1</span><span>"</span></div></div><div><div><div>2</div></div><div><span>"</span><span>ScopeAddressBackup</span><span>"="</span><span>192.168.18.1</span><span>"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>网络共享重启不失效<a href="#网络共享重启不失效"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedAccess]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>EnableRebootPersistConnection</span><span>"=</span><span>dword</span><span>:</span><span>00000001</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>修复文件共享功能和 SMB<a href="#修复文件共享功能和-smb"><span>#</span></a></h3><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>;启用 Workstation 服务和 SMB 协议</span></div></div><div><div><div>2</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation]</span></div></div><div><div><div>3</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mrxsmb]</span></div></div><div><div><div>6</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mrxsmb10]</span></div></div><div><div><div>9</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>10</div></div><div>
</div></div><div><div><div>11</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mrxsmb20]</span></div></div><div><div><div>12</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>13</div></div><div>
</div></div><div><div><div>14</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\browser]</span></div></div><div><div><div>15</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBIOS]</span></div></div><div><div><div>18</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div><div><div><div>19</div></div><div>
</div></div><div><div><div>20</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lmhosts]</span></div></div><div><div><div>21</div></div><div><span>"</span><span>Start</span><span>"=</span><span>dword</span><span>:</span><span>00000002</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section></section>
<section><h2>三、远程桌面优化<a href="#三远程桌面优化"><span>#</span></a></h2><section><h3>硬件加速 + 60FPS<a href="#硬件加速--60fps"><span>#</span></a></h3><p>被控端添加注册表值，提高远程桌面帧率：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>DWMFRAMEINTERVAL</span><span>"=</span><span>dword</span><span>:</span><span>0000000f</span></div></div><div><div><div>3</div></div><div><span>; 1000/15 ≈ 66fps，值越小帧数越高</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>控制端组策略设置：</p><ol>
<li>运行 <code>gpedit.msc</code></li>
<li>计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 远程桌面会话主机 → 远程会话环境</li>
<li>启用”将硬件图形适配器应用于所有远程桌面服务会话”</li>
<li>启用”配置远程桌面连接的 H.264/AVC 硬件编码”</li>
</ol></section><section><h3>自定义远程桌面端口<a href="#自定义远程桌面端口"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]</span></div></div><div><div><div>2</div></div><div><span>"</span><span>PortNumber</span><span>"=</span><span>dword</span><span>:</span><span>00000d3d</span><span>  </span><span>; 3389 的十六进制</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>RemoteFX USB 重定向<a href="#remotefx-usb-重定向"><span>#</span></a></h3><p>组策略中启用：计算机配置 → 管理模板 → Windows 组件 → 远程桌面服务 → 远程桌面会话客户端 → RemoteFX USB 设备重定向</p></section></section>
<section><h2>四、睡眠 / 休眠 / 唤醒排查<a href="#四睡眠--休眠--唤醒排查"><span>#</span></a></h2><p>电脑莫名其妙被唤醒？用以下命令排查：</p><section><h3>常用命令<a href="#常用命令"><span>#</span></a></h3><div><div><div><figure><figcaption><span></span><span>Terminal window</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;查看上次唤醒设备</span></div></div><div><div><div>2</div></div><div><span>powercfg</span><span> -lastwake</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;查看哪些设备可以唤醒电脑</span></div></div><div><div><div>5</div></div><div><span>powercfg</span><span> -devicequery wake_armed</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;查看阻止休眠的进程或驱动</span></div></div><div><div><div>8</div></div><div><span>powercfg</span><span> /requests</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>;查看计划任务唤醒</span></div></div><div><div><div>11</div></div><div><span>powershell</span><span> </span><span>"Get-ScheduledTask | where {$_.settings.waketorun}"</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>;查看电源需求重写</span></div></div><div><div><div>14</div></div><div><span>powercfg</span><span> /requestsoverride</span></div></div><div><div><div>15</div></div><div>
</div></div><div><div><div>16</div></div><div><span>;查看支持的睡眠状态</span></div></div><div><div><div>17</div></div><div><span>powercfg</span><span> -a</span></div></div><div><div><div>18</div></div><div>
</div></div><div><div><div>19</div></div><div><span>;生成电池报告</span></div></div><div><div><div>20</div></div><div><span>powercfg</span><span> /batteryreport</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section><section><h3>睡眠状态（S 状态）<a href="#睡眠状态s-状态"><span>#</span></a></h3>

<table><thead><tr><th>状态</th><th>说明</th><th>唤醒速度</th></tr></thead><tbody><tr><td>S0</td><td>正常工作</td><td>-</td></tr><tr><td>S1</td><td>CPU 停止</td><td>~0 秒</td></tr><tr><td>S2</td><td>CPU 关闭</td><td>~0.1 秒</td></tr><tr><td>S3</td><td>仅内存供电</td><td>~0.5 秒</td></tr><tr><td>S4</td><td>休眠（写入硬盘）</td><td>~30 秒</td></tr><tr><td>S5</td><td>关机</td><td>-</td></tr></tbody></table></section><section><h3>禁止硬件唤醒<a href="#禁止硬件唤醒"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>powercfg</span><span> /devicedisablewake </span><span>"HID-compliant mouse (003)"</span></div></div><div><div><div>2</div></div><div><span>powercfg</span><span> /deviceenablewake </span><span>"HID-compliant mouse (003)"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>禁止计划任务和定时器唤醒<a href="#禁止计划任务和定时器唤醒"><span>#</span></a></h3><p>电源选项 → 更改计划设置 → 更改高级电源设置 → 睡眠 → 允许使用唤醒定时器 → 禁用</p></section><section><h3>powercfg 请求覆盖<a href="#powercfg-请求覆盖"><span>#</span></a></h3><p>当某个进程阻止电脑睡眠时，可以绕过它的请求：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;阻止 chrome 阻止睡眠</span></div></div><div><div><div>2</div></div><div><span>powercfg</span><span> /requestsoverride PROCESS </span><span>"chrome.exe"</span><span> system</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;阻止音频驱动阻止睡眠</span></div></div><div><div><div>5</div></div><div><span>powercfg</span><span> /requestsoverride DRIVER </span><span>"Realtek High Definition Audio"</span><span> SYSTEM</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>;恢复（不加电源需求类型即为恢复）</span></div></div><div><div><div>8</div></div><div><span>powercfg</span><span> /requestsoverride PROCESS chrome.exe</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>无人超时睡眠设置<a href="#无人超时睡眠设置"><span>#</span></a></h3><p>默认唤醒后 120 秒会再次睡眠，可修改此值：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;使用电池</span></div></div><div><div><div>2</div></div><div><span>powercfg</span><span> /SETDCVALUEINDEX SCHEME_CURRENT 238C9FA8-0AAD-41ED-83F4-97BE242C8F20 7bc4a2f9-d8fc-4469-b07b-33eb785aaca0 </span><span>36000</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;插电源</span></div></div><div><div><div>5</div></div><div><span>powercfg</span><span> /SETACVALUEINDEX SCHEME_CURRENT 238C9FA8-0AAD-41ED-83F4-97BE242C8F20 7bc4a2f9-d8fc-4469-b07b-33eb785aaca0 </span><span>36000</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>五、程序组策略关联启动<a href="#五程序组策略关联启动"><span>#</span></a></h2><p>通过计划任务 + 事件触发器，可以在某个程序启动或退出时自动执行另一个程序。</p><section><h3>配置步骤<a href="#配置步骤"><span>#</span></a></h3><ol>
<li><strong>启用审核策略：</strong> <code>secpol.msc</code> → 本地策略 → 审核策略 → 审核进程跟踪 → 勾选”成功”</li>
<li><strong>创建计划任务</strong>（<code>taskschd.msc</code>）：
<ul>
<li>勾选”最高权限运行”</li>
<li>触发器：发生事件时 → 自定义 → XML 编辑</li>
</ul>
</li>
</ol></section><section><h3>事件筛选器 XML<a href="#事件筛选器-xml"><span>#</span></a></h3><p><strong>进程启动时（EventID 4688）：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>QueryList</span><span>&gt;</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>&lt;</span><span>Query</span><span> </span><span>Id</span><span>=</span><span>"0"</span><span> </span><span>Path</span><span>=</span><span>"Security"</span><span>&gt;</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>&lt;</span><span>Select</span><span> </span><span>Path</span><span>=</span><span>"Security"</span><span>&gt;</span></div></div><div><div><div>4</div></div><div><span><span>     </span></span><span>*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13312 and (band(Keywords,9007199254740992)) and (EventID=4688)]]</span></div></div><div><div><div>5</div></div><div><span><span>     </span></span><span>and</span></div></div><div><div><div>6</div></div><div><span><span>     </span></span><span>*[EventData[Data[@Name='NewProcessName'] and (Data='C:\路径\你的软件A.exe')]]</span></div></div><div><div><div>7</div></div><div><span><span>    </span></span><span>&lt;/</span><span>Select</span><span>&gt;</span></div></div><div><div><div>8</div></div><div><span><span>  </span></span><span>&lt;/</span><span>Query</span><span>&gt;</span></div></div><div><div><div>9</div></div><div><span>&lt;/</span><span>QueryList</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>进程退出时（EventID 4689）：</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>QueryList</span><span>&gt;</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>&lt;</span><span>Query</span><span> </span><span>Id</span><span>=</span><span>"0"</span><span> </span><span>Path</span><span>=</span><span>"Security"</span><span>&gt;</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>&lt;</span><span>Select</span><span> </span><span>Path</span><span>=</span><span>"Security"</span><span>&gt;</span></div></div><div><div><div>4</div></div><div><span><span>     </span></span><span>*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and Task = 13313 and (band(Keywords,9007199254740992)) and (EventID=4689)]]</span></div></div><div><div><div>5</div></div><div><span><span>     </span></span><span>and</span></div></div><div><div><div>6</div></div><div><span><span>     </span></span><span>*[EventData[Data[@Name='ProcessName'] and (Data='C:\路径\你的软件A.exe')]]</span></div></div><div><div><div>7</div></div><div><span><span>    </span></span><span>&lt;/</span><span>Select</span><span>&gt;</span></div></div><div><div><div>8</div></div><div><span><span>  </span></span><span>&lt;/</span><span>Query</span><span>&gt;</span></div></div><div><div><div>9</div></div><div><span>&lt;/</span><span>QueryList</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>六、Win10 无用功能<a href="#六win10-无用功能"><span>#</span></a></h2><p>以下服务可以按需禁用：</p><ul>
<li><strong>诊断跟踪：</strong> Diagnostic Policy、Diagnostic Service Host、Diagnostic System Host</li>
<li><strong>连接体验：</strong> Connected User Experiences and Telemetry</li>
<li><strong>传递优化：</strong> Windows 更新 → 高级选项 → 传递优化 → 允许从其他电脑下载（关闭）</li>
</ul></section>
<section><h2>七、Windows 11 优化<a href="#七windows-11-优化"><span>#</span></a></h2><section><h3>卸载小组件（Windows Web Experience）<a href="#卸载小组件windows-web-experience"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>winget uninstall </span><span>"windows web experience pack"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>移除 Xbox 游戏服务和 Edge 游戏助手<a href="#移除-xbox-游戏服务和-edge-游戏助手"><span>#</span></a></h3><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>;移除游戏服务</span></div></div><div><div><div>2</div></div><div><span>get-appxpackage</span><span> Microsoft.GamingServices | </span><span>remove-AppxPackage</span><span><span> </span><span>-</span><span>allusers</span></span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>;移除 Edge 游戏助手</span></div></div><div><div><div>5</div></div><div><span>Get-AppxPackage</span><span><span> </span><span>-</span><span>AllUsers </span><span>-</span><span>Name Microsoft.Edge.GameAssist | </span></span><span>Remove-AppxPackage</span><span><span> </span><span>-</span><span>allusers</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>八、应用使用记录（注册表位置）<a href="#八应用使用记录注册表位置"><span>#</span></a></h2><p>Windows 会记录你的应用使用历史，以下位置存储了这些数据：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FeatureUsage\*</span></div></div><div><div><div>2</div></div><div><span>HKCU\SOFTWARE\...\AppCompatFlags\Compatibility Assistant\Store</span></div></div><div><div><div>3</div></div><div><span>HKCU\SOFTWARE\Classes\Local Settings\...\MuiCache</span></div></div><div><div><div>4</div></div><div><span>HKLM\SYSTEM\ControlSet001\Services\bam\State\UserSettings\S-1-5-21-...</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>九、BypassNRO（绕过首次登录联网）<a href="#九bypassnro绕过首次登录联网"><span>#</span></a></h2><p>重装系统时跳过强制联网登录：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>reg</span><span> add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v BypassNRO /t REG_DWORD /d </span><span>1</span><span> /f</span></div></div><div><div><div>2</div></div><div><span>shutdown</span><span> /r /t </span><span>0</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十、重置 Windows Update 缓存<a href="#十重置-windows-update-缓存"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>@</span><span>echo</span><span> </span><span>off</span></div></div><div><div><div>2</div></div><div><span>net stop</span><span> wuauserv</span></div></div><div><div><div>3</div></div><div><span>net stop</span><span> cryptSvc</span></div></div><div><div><div>4</div></div><div><span>net stop</span><span> bits</span></div></div><div><div><div>5</div></div><div><span>net stop</span><span> msiserver</span></div></div><div><div><div>6</div></div><div><span>ren</span><span> C:\Windows\SoftwareDistribution SoftwareDistribution.old</span></div></div><div><div><div>7</div></div><div><span>ren</span><span> C:\Windows\System32\catroot2 catroot2.old</span></div></div><div><div><div>8</div></div><div><span>net start</span><span> wuauserv</span></div></div><div><div><div>9</div></div><div><span>net start</span><span> cryptSvc</span></div></div><div><div><div>10</div></div><div><span>net start</span><span> bits</span></div></div><div><div><div>11</div></div><div><span>net start</span><span> msiserver</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十一、Win10 优化批处理<a href="#十一win10-优化批处理"><span>#</span></a></h2><p>有一个大型菜单式批处理脚本（<code>win10优化.cmd</code>），包含近 50 项优化选项：</p><ul>
<li>关闭 Windows Defender</li>
<li>关闭防火墙</li>
<li>禁止自动更新驱动</li>
<li>关闭系统还原</li>
<li>关闭 UAC</li>
<li>关闭 IPv6</li>
<li>关闭家庭组</li>
<li>禁用视觉效果</li>
<li>转移临时文件夹</li>
<li>禁用远程协助</li>
<li>等</li>
</ul><p>执行后选择对应数字即可操作。</p></section>
<section><h2>小结<a href="#小结"><span>#</span></a></h2><p>系统配置优化需要根据实际使用场景来权衡。远程桌面用户关注加速和 USB 重定向，笔记本用户关注睡眠唤醒问题，NAS 用户关注 SMB 文件共享。找到你的需求点，精准配置即可。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/%E5%A5%BD%E6%83%B3%E7%8E%A9%E5%8E%9F%E7%A5%9E/</id>
      <title type="text">☁️哒↘哒↗哒↘哒↗哒↘，好想玩原神😋</title>
      <published>2026-06-22T00:00:00.000Z</published>
      <updated>2026-06-22T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/%E5%A5%BD%E6%83%B3%E7%8E%A9%E5%8E%9F%E7%A5%9E/"/>
      <summary type="text">☁️哒↘哒↗哒↘哒↗哒↘，好想玩原神😋</summary>
      <content type="html"><![CDATA[ ]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/game/</id>
      <title type="text">游戏记录</title>
      <published>2026-06-01T00:00:00.000Z</published>
      <updated>2026-06-28T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/game/"/>
      <summary type="text"></summary>
      <content type="html"><![CDATA[<section><h2>泰拉瑞亚 <a href="/blog/posts/terraria/">查看</a><a href="#泰拉瑞亚-查看"><span>#</span></a></h2><blockquote><p>目前有一个原版,有一个灾厄 mod</p></blockquote></section>
<section><h2>异星工场 <a href="/blog/posts/factorio/">查看</a><a href="#异星工场-查看"><span>#</span></a></h2><blockquote><p>原版太空时代 DLC,仅添加少量功能性 mod</p></blockquote></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/linux%E6%90%AD%E5%BB%BAiscsi%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%B5%81%E7%A8%8B/</id>
      <title type="text">Linux 搭建 iSCSI 服务器流程</title>
      <published>2026-06-01T00:00:00.000Z</published>
      <updated>2026-06-01T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/linux%E6%90%AD%E5%BB%BAiscsi%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%B5%81%E7%A8%8B/"/>
      <summary type="text">Linux 搭建 iSCSI 服务器流程</summary>
      <content type="html"><![CDATA[<section><h2>Linux 搭建 iSCSI 服务器流程<a href="#linux-搭建-iscsi-服务器流程"><span>#</span></a></h2><section><h3>与本地硬盘体验一致的云硬盘<a href="#与本地硬盘体验一致的云硬盘"><span>#</span></a></h3><p>1.安装服务端程序 <code>target</code></p><p>版本: <code>Debian 12.5</code></p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>apt</span><span> </span><span>install</span><span> </span><span>targetcli-fb</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>2.检查磁盘信息</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>lsblk</span><span> </span><span>分区信息</span></div></div><div><div><div>2</div></div><div><span>sudo</span><span> </span><span>fdisk</span><span> </span><span>-l</span><span> </span><span>磁盘信息</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>3.iscsi 添加硬盘</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>进入子系统</span></div></div><div><div><div>2</div></div><div><span>sudo</span><span> </span><span>targetcli</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>列出虚拟菜单</span></div></div><div><div><div>5</div></div><div><span>ls</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2><strong>添加虚拟共享硬盘</strong><a href="#添加虚拟共享硬盘"><span>#</span></a></h2><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>/backstores/block</span><span> </span><span>create</span><span> </span><span>name=MyDisk</span><span>(</span><span>共享名称</span><span>) </span><span>dev=/dev/sda3</span><span>(</span><span>分区名称</span><span>)</span></div></div><div><div><div>2</div></div><div><span>/backstores/block</span><span> </span><span>create</span><span> </span><span>name=Misaka-Storage</span><span> </span><span>dev=/dev/sda1</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>添加 iscsi target 资源</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>/iscsi</span><span> </span><span>create</span><span> </span><span>wwn=iqn.2024-06.com.example:server</span><span> </span><span>格式为:</span><span> [格式].[年份]-[月份].com.[自定义名称]</span></div></div><div><div><div>2</div></div><div><span>/iscsi</span><span> </span><span>create</span><span> </span><span>wwn=iqn.2025-09.com.moe:server</span><span> </span><span>格式为:</span><span> [格式].[年份]-[月份].com.[自定义名称]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>设置访问控制表 (ACL)</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>/iscsi/iqn.2024-06.com.moe:server/tpg1/acls</span><span> </span><span>create</span><span> </span><span>iqn.2025-09.com.moe:client</span><span>  </span><span>格式为:</span><span> [名称]:[自定义名称]</span></div></div><div><div><div>2</div></div><div><span>/iscsi/iqn.2025-09.com.moe:server/tpg1/acls</span><span> </span><span>create</span><span> </span><span>iqn.2025-09.com.moe:client</span><span>  </span><span>格式为:</span><span> [名称]:[自定义名称]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>添加 luns 设备</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>/iscsi/iqn.2024-06.com.moe:server/tpg1/luns</span><span> </span><span>create</span><span> </span><span>/backstores/block/共享名称</span></div></div><div><div><div>2</div></div><div><span>/iscsi/iqn.2025-09.com.moe:server/tpg1/luns</span><span> </span><span>create</span><span> </span><span>/backstores/block/Misaka-Storage</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>设置 iscsi 服务端要监听的 IP(网卡)</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>/iscsi/iqn.2024-06.com.moe:server/tpg1/portals</span><span> </span><span>create</span><span> </span><span>0.0.0.0:3260</span><span> </span><span>监听本地主机所有的网卡</span></div></div><div><div><div>2</div></div><div><span>/iscsi/iqn.2025-09.com.moe:server/tpg1/portals</span><span> </span><span>create</span><span> </span><span>0.0.0.0:3260</span><span> </span><span>监听本地主机所有的网卡</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>4.启动 target 服务</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>systemctl</span><span> </span><span>enable</span><span> </span><span>rtslib-fb-targetctl</span></div></div><div><div><div>2</div></div><div><span>sudo</span><span> </span><span>systemctl</span><span> </span><span>restart</span><span> </span><span>rtslib-fb-targetctl</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2><strong>Windows 添加 ISCSI 硬盘流程</strong><a href="#windows-添加-iscsi-硬盘流程"><span>#</span></a></h2><ul>
<li>控制面板 -→Windows 工具 -→服务</li>
<li>在 Windows 操作系统中已开启 Microsoft iSCSI Initiator Service 服务</li>
<li>控制面板 -→Windows 工具 -→ISCSI 发起工具</li>
<li>点击发现选项卡 -→发现门户 输入服务器 IP 和端口</li>
<li>点击配置选项卡 -→点击更改,填入发起程序名称</li>
<li>点击目标选项卡 -→应该可以看到一条记录,点击连接</li>
</ul><section><h3>接下来打开控制面板 -→Windows 工具 -→计算机管理 -→磁盘管理 — 可以看到添加的硬盘<a href="#接下来打开控制面板--windows-工具--计算机管理--磁盘管理--可以看到添加的硬盘"><span>#</span></a></h3></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/terraria/</id>
      <title type="text">Terraria</title>
      <published>2026-06-01T00:00:00.000Z</published>
      <updated>2026-07-04T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/terraria/"/>
      <summary type="text"></summary>
      <content type="html"><![CDATA[本文已加密保护，请访问网站查看。]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/code-examples/</id>
      <title type="text">Firefly 代码块示例</title>
      <published>1970-01-03T00:00:00.000Z</published>
      <updated>1970-01-03T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/code-examples/"/>
      <summary type="text">在Firefly中使用表达性代码的代码块在 Markdown 中的外观。</summary>
      <content type="html"><![CDATA[<p>在这里，我们将探索如何使用 <a href="https://expressive-code.com/" target="_blank">Expressive Code</a> 展示代码块。提供的示例基于官方文档，您可以参考以获取更多详细信息。</p>
<section><h2>表达性代码<a href="#表达性代码"><span>#</span></a></h2><section><h3>语法高亮<a href="#语法高亮"><span>#</span></a></h3><p><a href="https://expressive-code.com/key-features/syntax-highlighting/" target="_blank">语法高亮</a></p><section><h4>常规语法高亮<a href="#常规语法高亮"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'此代码有语法高亮!'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>渲染 ANSI 转义序列<a href="#渲染-ansi-转义序列"><span>#</span></a></h4><div><div><div><figure><figcaption><span></span><span>Terminal window</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Standard ANSI colors:</span></div></div><div><div><div>2</div></div><div><span>- Dimmed:     </span><span> Black </span><span> Red </span><span> Green </span><span> Yellow </span><span> Blue </span><span> Magenta </span><span> Cyan </span><span> White </span></div></div><div><div><div>3</div></div><div><span>- Foreground: </span><span> Black </span><span> Red </span><span> Green </span><span> Yellow </span><span> Blue </span><span> Magenta </span><span> Cyan </span><span> White </span></div></div><div><div><div>4</div></div><div><span>- Background: </span><span> Black </span><span> Red </span><span> Green </span><span> Yellow </span><span> Blue </span><span> Magenta </span><span> Cyan </span><span> White </span></div></div><div><div><div>5</div></div><div><span>- Reversed:   </span><span> Black </span><span> Red </span><span> Green </span><span> Yellow </span><span> Blue </span><span> Magenta </span><span> Cyan </span><span> White </span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>8-bit colors (showing colors 160-171 as an example):</span></div></div><div><div><div>8</div></div><div><span>- Dimmed:     </span><span> 160 </span><span> 161 </span><span> 162 </span><span> 163 </span><span> 164 </span><span> 165 </span><span> 166 </span><span> 167 </span><span> 168 </span><span> 169 </span><span> 170 </span><span> 171 </span></div></div><div><div><div>9</div></div><div><span>- Foreground: </span><span> 160 </span><span> 161 </span><span> 162 </span><span> 163 </span><span> 164 </span><span> 165 </span><span> 166 </span><span> 167 </span><span> 168 </span><span> 169 </span><span> 170 </span><span> 171 </span></div></div><div><div><div>10</div></div><div><span>- Background: </span><span> 160 </span><span> 161 </span><span> 162 </span><span> 163 </span><span> 164 </span><span> 165 </span><span> 166 </span><span> 167 </span><span> 168 </span><span> 169 </span><span> 170 </span><span> 171 </span></div></div><div><div><div>11</div></div><div><span>- Reversed:   </span><span> 160 </span><span> 161 </span><span> 162 </span><span> 163 </span><span> 164 </span><span> 165 </span><span> 166 </span><span> 167 </span><span> 168 </span><span> 169 </span><span> 170 </span><span> 171 </span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>24-bit colors (full RGB):</span></div></div><div><div><div>14</div></div><div><span>- Dimmed:     </span><span> ForestGreen - RGB(34,139,34) </span><span> RebeccaPurple - RGB(102,51,153) </span></div></div><div><div><div>15</div></div><div><span>- Foreground: </span><span> ForestGreen - RGB(34,139,34) </span><span> RebeccaPurple - RGB(102,51,153) </span></div></div><div><div><div>16</div></div><div><span>- Background: </span><span> ForestGreen - RGB(34,139,34) </span><span> RebeccaPurple - RGB(102,51,153) </span></div></div><div><div><div>17</div></div><div><span>- Reversed:   </span><span> ForestGreen - RGB(34,139,34) </span><span> RebeccaPurple - RGB(102,51,153) </span></div></div><div><div><div>18</div></div><div>
</div></div><div><div><div>19</div></div><div><span>Font styles:</span></div></div><div><div><div>20</div></div><div><span>- Default</span></div></div><div><div><div>21</div></div><div><span>- </span><span>Bold</span></div></div><div><div><div>22</div></div><div><span>- </span><span>Dimmed</span></div></div><div><div><div>23</div></div><div><span>- </span><span>Italic</span></div></div><div><div><div>24</div></div><div><span>- </span><span>Underline</span></div></div><div><div><div>25</div></div><div><span>- </span><span>Reversed</span></div></div><div><div><div>26</div></div><div><span>- </span><span>Strikethrough</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section></section><section><h3>编辑器和终端框架<a href="#编辑器和终端框架"><span>#</span></a></h3><p><a href="https://expressive-code.com/key-features/frames/" target="_blank">编辑器和终端框架</a></p><section><h4>代码编辑器框架<a href="#代码编辑器框架"><span>#</span></a></h4><div><figure><figcaption><span>my-test-file.js</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'标题属性示例'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption><span>src/content/index.html</span></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>div</span><span>&gt;文件名注释示例&lt;/</span><span>div</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>终端框架<a href="#终端框架"><span>#</span></a></h4><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>echo</span><span> </span><span>"此终端框架没有标题"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption><span>PowerShell 终端示例</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Write-Output</span><span> </span><span>"这个有标题!"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>覆盖框架类型<a href="#覆盖框架类型"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>echo</span><span> </span><span>"看，没有框架!"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption><span>PowerShell Profile.ps1</span></figcaption><pre><code><div><div><div>1</div></div><div><span># 如果不覆盖，这将是一个终端框架</span></div></div><div><div><div>2</div></div><div><span>function</span><span> </span><span>Watch-Tail</span><span> { </span><span>Get-Content</span><span><span> </span><span>-</span><span>Tail </span></span><span>20</span><span><span> </span><span>-</span><span>Wait $args }</span></span></div></div><div><div><div>3</div></div><div><span>New-Alias</span><span> tail </span><span>Watch-Tail</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section><section><h3>文本和行标记<a href="#文本和行标记"><span>#</span></a></h3><p><a href="https://expressive-code.com/key-features/text-markers/" target="_blank">文本和行标记</a></p><section><h4>标记整行和行范围<a href="#标记整行和行范围"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// 第1行 - 通过行号定位</span></div></div><div><div><div>2</div></div><div><span>// 第2行</span></div></div><div><div><div>3</div></div><div><span>// 第3行</span></div></div><div><div><div>4</div></div><div><span>// 第4行 - 通过行号定位</span></div></div><div><div><div>5</div></div><div><span>// 第5行</span></div></div><div><div><div>6</div></div><div><span>// 第6行</span></div></div><div><div><div>7</div></div><div><span>// 第7行 - 通过范围 "7-8" 定位</span></div></div><div><div><div>8</div></div><div><span>// 第8行 - 通过范围 "7-8" 定位</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>选择行标记类型 (mark, ins, del)<a href="#选择行标记类型-mark-ins-del"><span>#</span></a></h4><div><figure><figcaption><span>line-markers.js</span></figcaption><pre><code><div><div><div>1</div></div><div><span>function</span><span> </span><span>demo</span><span>() {</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>'此行标记为已删除'</span><span>)</span></div></div><div><div><div>3</div></div><div><span>  </span><span>// 此行和下一行标记为已插入</span></div></div><div><div><div>4</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>'这是第二个插入行'</span><span>)</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>  </span><span>return</span><span> </span><span>'此行使用中性默认标记类型'</span></div></div><div><div><div>7</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>为行标记添加标签<a href="#为行标记添加标签"><span>#</span></a></h4><div><figure><figcaption><span>labeled-line-markers.jsx</span></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>button</span></div></div><div><div><div>2</div></div><div><span>  </span><span>role</span><span>=</span><span>"button"</span></div></div><div><div><div>3</div></div><div><span><span>  </span></span><span>{</span><span>...</span><span>props</span><span>}</span></div></div><div><div><div>4</div></div><div><span>  </span><span>value</span><span>=</span><span>{</span><span>value</span><span>}</span></div></div><div><div><div>5</div></div><div><span>  </span><span>className</span><span><span>=</span><span>{</span><span>buttonClassName</span><span>}</span></span></div></div><div><div><div>6</div></div><div><span>  </span><span>disabled</span><span>=</span><span>{</span><span>disabled</span><span>}</span></div></div><div><div><div>7</div></div><div><span>  </span><span>active</span><span>=</span><span>{</span><span>active</span><span>}</span></div></div><div><div><div>8</div></div><div><span>&gt;</span></div></div><div><div><div>9</div></div><div><span><span>  </span></span><span>{</span><span>children</span><span> </span><span>&amp;&amp;</span></div></div><div><div><div>10</div></div><div><span><span>    </span></span><span>!</span><span>active</span><span> </span><span>&amp;&amp;</span></div></div><div><div><div>11</div></div><div><span><span><span>    </span></span><span>(</span></span><span>typeof</span><span> </span><span>children</span><span> </span><span>===</span><span> </span><span>'string'</span><span> </span><span>?</span><span> &lt;</span><span>span</span><span>&gt;</span><span>{</span><span>children</span><span>}</span><span>&lt;/</span><span>span</span><span>&gt; </span><span>:</span><span> </span><span>children</span><span>)</span><span>}</span></div></div><div><div><div>12</div></div><div><span>&lt;/</span><span>button</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>在单独行上添加长标签<a href="#在单独行上添加长标签"><span>#</span></a></h4><div><div><div><figure><figcaption><span>labeled-line-markers.jsx</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>button</span></div></div><div><div><div>2</div></div><div><span>  </span><span>role</span><span>=</span><span>"button"</span></div></div><div><div><div>3</div></div><div><span><span>  </span></span><span>{</span><span>...</span><span>props</span><span>}</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>  </span><span>value</span><span>=</span><span>{</span><span>value</span><span>}</span></div></div><div><div><div>6</div></div><div><span>  </span><span>className</span><span><span>=</span><span>{</span><span>buttonClassName</span><span>}</span></span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span>  </span><span>disabled</span><span>=</span><span>{</span><span>disabled</span><span>}</span></div></div><div><div><div>9</div></div><div><span>  </span><span>active</span><span>=</span><span>{</span><span>active</span><span>}</span></div></div><div><div><div>10</div></div><div><span>&gt;</span></div></div><div><div><div>11</div></div><div>
</div></div><div><div><div>12</div></div><div><span><span>  </span></span><span>{</span><span>children</span><span> </span><span>&amp;&amp;</span></div></div><div><div><div>13</div></div><div><span><span>    </span></span><span>!</span><span>active</span><span> </span><span>&amp;&amp;</span></div></div><div><div><div>14</div></div><div><span><span><span>    </span></span><span>(</span></span><span>typeof</span><span> </span><span>children</span><span> </span><span>===</span><span> </span><span>'string'</span><span> </span><span>?</span><span> &lt;</span><span>span</span><span>&gt;</span><span>{</span><span>children</span><span>}</span><span>&lt;/</span><span>span</span><span>&gt; </span><span>:</span><span> </span><span>children</span><span>)</span><span>}</span></div></div><div><div><div>15</div></div><div><span>&lt;/</span><span>button</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section><section><h4>使用类似 diff 的语法<a href="#使用类似-diff-的语法"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>此行将标记为已插入</span></div></div><div><div><div>2</div></div><div><span>此行将标记为已删除</span></div></div><div><div><div>3</div></div><div><span>这是常规行</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>--- a/README.md</span></div></div><div><div><div>2</div></div><div><span>+++ b/README.md</span></div></div><div><div><div>3</div></div><div><span>@@ -1,3 +1,4 @@</span></div></div><div><div><div>4</div></div><div><span>+this is an actual diff file</span></div></div><div><div><div>5</div></div><div><span>-all contents will remain unmodified</span></div></div><div><div><div>6</div></div><div><span><span> </span></span><span>no whitespace will be removed either</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>结合语法高亮和类似 diff 的语法<a href="#结合语法高亮和类似-diff-的语法"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>function</span><span> </span><span>thisIsJavaScript</span><span>() {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>// 整个块都会以 JavaScript 高亮显示，</span></div></div><div><div><div>3</div></div><div><span>  </span><span>// 并且我们仍然可以为其添加 diff 标记！</span></div></div><div><div><div>4</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>'要删除的旧代码'</span><span>)</span></div></div><div><div><div>5</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>'新的闪亮代码！'</span><span>)</span></div></div><div><div><div>6</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>标记行内的单独文本<a href="#标记行内的单独文本"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>function</span><span> </span><span>demo</span><span>() {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>// 标记行内的任何给定文本</span></div></div><div><div><div>3</div></div><div><span>  </span><span>return</span><span> </span><span>'支持给定文本的多个匹配项'</span><span>;</span></div></div><div><div><div>4</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>正则表达式<a href="#正则表达式"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'单词 </span><mark><span>yes</span></mark><span> 和 </span><mark><span>yep</span></mark><span> 将被标记。'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>转义正斜杠<a href="#转义正斜杠"><span>#</span></a></h4><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>echo</span><span> </span><span>"Test"</span><span> &gt; </span><mark><span>/home/</span></mark><span>test.txt</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>选择内联标记类型 (mark, ins, del)<a href="#选择内联标记类型-mark-ins-del"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>function</span><span> </span><span>demo</span><span>() {</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>'这些是插入和删除的标记类型'</span><span>);</span></div></div><div><div><div>3</div></div><div><span>  </span><span>// return 语句使用默认标记类型</span></div></div><div><div><div>4</div></div><div><span>  </span><mark><span>return</span><span> </span><span>true</span><span>;</span></mark></div></div><div><div><div>5</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section><section><h3>自动换行<a href="#自动换行"><span>#</span></a></h3><p><a href="https://expressive-code.com/key-features/word-wrap/" target="_blank">自动换行</a></p><section><h4>为每个块配置自动换行<a href="#为每个块配置自动换行"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// 启用换行的示例</span></div></div><div><div><div>2</div></div><div><span>function</span><span> </span><span>getLongString</span><span>() {</span></div></div><div><div><div>3</div></div><div><span>  </span><span>return</span><span> </span><span>'这是一个非常长的字符串，除非容器极宽，否则很可能无法适应可用空间'</span></div></div><div><div><div>4</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// wrap=false 的示例</span></div></div><div><div><div>2</div></div><div><span>function</span><span> </span><span>getLongString</span><span>() {</span></div></div><div><div><div>3</div></div><div><span>  </span><span>return</span><span> </span><span>'这是一个非常长的字符串，除非容器极宽，否则很可能无法适应可用空间'</span></div></div><div><div><div>4</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>配置换行的缩进<a href="#配置换行的缩进"><span>#</span></a></h4><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// preserveIndent 示例（默认启用）</span></div></div><div><div><div>2</div></div><div><span>function</span><span> </span><span>getLongString</span><span>() {</span></div></div><div><div><div>3</div></div><div><span>  </span><span>return</span><span> </span><span>'这是一个非常长的字符串，除非容器极宽，否则很可能无法适应可用空间'</span></div></div><div><div><div>4</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// preserveIndent=false 的示例</span></div></div><div><div><div>2</div></div><div><span>function</span><span> </span><span>getLongString</span><span>() {</span></div></div><div><div><div>3</div></div><div><span>  </span><span>return</span><span> </span><span>'这是一个非常长的字符串，除非容器极宽，否则很可能无法适应可用空间'</span></div></div><div><div><div>4</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section></section>
<section><h2>可折叠部分<a href="#可折叠部分"><span>#</span></a></h2><p><a href="https://expressive-code.com/plugins/collapsible-sections/" target="_blank">可折叠部分</a></p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div></div></div><div><span></span><span></span><span>5 collapsed lines</span></div></div><div><div><div>1</div></div><div><span>// 所有这些样板设置代码将被折叠</span></div></div><div><div><div>2</div></div><div><span>import</span><span> { </span><span>someBoilerplateEngine</span><span> } </span><span>from</span><span> </span><span>'@example/some-boilerplate'</span></div></div><div><div><div>3</div></div><div><span>import</span><span> { </span><span>evenMoreBoilerplate</span><span> } </span><span>from</span><span> </span><span>'@example/even-more-boilerplate'</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>const</span><span> </span><span>engine</span><span> </span><span>=</span><span> </span><span>someBoilerplateEngine</span><span>(</span><span>evenMoreBoilerplate</span><span>())</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>// 这部分代码默认可见</span></div></div><div><div><div>8</div></div><div><span><span>engine</span><span>.</span></span><span>doSomething</span><span>(</span><span>1</span><span>, </span><span>2</span><span>, </span><span>3</span><span><span>, </span><span>calcFn</span><span>)</span></span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>function</span><span> </span><span>calcFn</span><span>() {</span></div></div><div><div><div>11</div></div><div><span>  </span><span>// 您可以有多个折叠部分</span></div></div><div><div><div></div></div><div><span></span><span></span><span>3 collapsed lines</span></div></div><div><div><div>12</div></div><div><span>  </span><span>const</span><span> </span><span>a</span><span> </span><span>=</span><span> </span><span>1</span></div></div><div><div><div>13</div></div><div><span>  </span><span>const</span><span> </span><span>b</span><span> </span><span>=</span><span> </span><span>2</span></div></div><div><div><div>14</div></div><div><span>  </span><span>const</span><span> </span><span>c</span><span> </span><span>=</span><span><span> </span><span>a</span><span> </span></span><span>+</span><span><span> </span><span>b</span></span></div></div><div><div><div>15</div></div><div>
</div></div><div><div><div>16</div></div><div><span>  </span><span>// 这将保持可见</span></div></div><div><div><div>17</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>`计算结果: </span><span>${</span><span>a</span><span>}</span><span> + </span><span>${</span><span>b</span><span>}</span><span> = </span><span>${</span><span>c</span><span>}</span><span>`</span><span>)</span></div></div><div><div><div>18</div></div><div><span>  </span><span>return</span><span><span> </span><span>c</span></span></div></div><div><div><div>19</div></div><div><span>}</span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div></div></div><div><span></span><span></span><span>4 collapsed lines</span></div></div><div><div><div>21</div></div><div><span>// 直到块末尾的所有代码将再次被折叠</span></div></div><div><div><div>22</div></div><div><span><span>engine</span><span>.</span></span><span>closeConnection</span><span>()</span></div></div><div><div><div>23</div></div><div><span><span>engine</span><span>.</span></span><span>freeMemory</span><span>()</span></div></div><div><div><div>24</div></div><div><span><span>engine</span><span>.</span></span><span>shutdown</span><span>({ </span><span>reason</span><span>:</span><span> </span><span>'示例样板代码结束'</span><span> })</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div></section>
<section><h2>行号<a href="#行号"><span>#</span></a></h2><p><a href="https://expressive-code.com/plugins/line-numbers/" target="_blank">行号</a></p><section><h3>为每个块显示行号<a href="#为每个块显示行号"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>// 此代码块将显示行号</span></div></div><div><div><div>2</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'来自第2行的问候!'</span><span>)</span></div></div><div><div><div>3</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'我在第3行'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><div><figure><figcaption></figcaption><pre><code><div><div><span>// 此块禁用行号</span></div></div><div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'你好?'</span><span>)</span></div></div><div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'抱歉，你知道我在第几行吗?'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>更改起始行号<a href="#更改起始行号"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>5</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'来自第5行的问候!'</span><span>)</span></div></div><div><div><div>6</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>'我在第6行'</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section></section>
<section><h2>Tab 代码块<a href="#tab-代码块"><span>#</span></a></h2><p>由 <a href="https://github.com/ITZSHOAIB/rehype-code-group" target="_blank">rehype-code-group</a> 提供，语法与 <a href="https://vitepress.dev/guide/markdown#code-groups" target="_blank">VitePress 代码组</a> 一致：用 <code>::: code-group labels=[...]</code> 包裹多个代码块，即可合并成一组标签页。</p><div><div><div></div><div>Note</div></div><div><p><code>labels=[...]</code> 中的标签按顺序对应组内的代码块，用英文逗号分隔；<code>:::</code> 与 <code>code-group</code> 之间的空格不能省略。</p></div></div><section><h3>基本用法<a href="#基本用法"><span>#</span></a></h3><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>::: code-group labels=[code.js, code.py, code.html]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>```js</span></div></div><div><div><div>4</div></div><div><span>export</span><span> </span><span>function</span><span> </span><span>greet</span><span><span>(</span><span>name</span><span>) {</span></span></div></div><div><div><div>5</div></div><div><span>  </span><span>return</span><span> </span><span>`Hello, </span><span>${</span><span>name</span><span>}</span><span>!`</span><span>;</span></div></div><div><div><div>6</div></div><div><span>}</span></div></div><div><div><div>7</div></div><div><span>```</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>```py</span></div></div><div><div><div>10</div></div><div><span>def</span><span> </span><span>greet</span><span><span>(</span><span>name</span><span>):</span></span></div></div><div><div><div>11</div></div><div><span>    </span><span>return</span><span> </span><span>f</span><span>"Hello, </span><span>{</span><span>name</span><span>}</span><span>!"</span></div></div><div><div><div>12</div></div><div><span>```</span></div></div><div><div><div>13</div></div><div>
</div></div><div><div><div>14</div></div><div><span>```html</span></div></div><div><div><div>15</div></div><div><span>&lt;</span><span>p</span><span>&gt;Hello, world!&lt;/</span><span>p</span><span>&gt;</span></div></div><div><div><div>16</div></div><div><span>```</span></div></div><div><div><div>17</div></div><div>
</div></div><div><div><div>18</div></div><div><span>:::</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>渲染效果：</p><div><div>code.jscode.pycode.html</div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>function</span><span> </span><span>greet</span><span><span>(</span><span>name</span><span>) {</span></span></div></div><div><div><div>2</div></div><div><span>  </span><span>return</span><span> </span><span>`Hello, </span><span>${</span><span>name</span><span>}</span><span>!`</span><span>;</span></div></div><div><div><div>3</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>def</span><span> </span><span>greet</span><span>(</span><span>name</span><span>):</span></div></div><div><div><div>2</div></div><div><span>    </span><span>return</span><span> </span><span>f</span><span>"Hello, </span><span>{</span><span>name</span><span>}</span><span>!"</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>p</span><span>&gt;Hello, world!&lt;/</span><span>p</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div></div></section><section><h3>标签中使用 Emoji<a href="#标签中使用-emoji"><span>#</span></a></h3><p>标签支持 <a href="https://github.com/omnidan/node-emoji#readme" target="_blank">emoji 短代码</a>，构建时会自动转换成 emoji：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>::: code-group labels=[:package: npm, :package: pnpm, :yarn: yarn]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div>📦 npm📦 pnpm🧶 yarn</div><div><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>npm</span><span> </span><span>create</span><span> </span><span>astro@latest</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>pnpm</span><span> </span><span>create</span><span> </span><span>astro@latest</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span>yarn</span><span> </span><span>create</span><span> </span><span>astro</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div></div></section><section><h3>与其他代码块特性组合<a href="#与其他代码块特性组合"><span>#</span></a></h3><p>组内仍是普通的 Expressive Code 代码块，标题、行号、行标记、折叠、终端框架等特性都可以照常使用。</p><div><div>配置文件终端折叠</div><div><div><figure><figcaption><span>astro.config.mjs</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>default</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>theme</span><span>:</span><span> </span><span>"firefly"</span><span>,</span></div></div><div><div><div>3</div></div><div><span>  </span><span>codeGroup</span><span>:</span><span> </span><span>true</span><span>,</span></div></div><div><div><div>4</div></div><div><span>};</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption><span>部署</span></figcaption><pre><code><div><div><div>1</div></div><div><span>pnpm</span><span> </span><span>build</span><span> &amp;&amp; </span><span>pnpm</span><span> </span><span>preview</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div><div><div><figure><figcaption></figcaption><pre><code><div><div><div></div></div><div><span></span><span></span><span>3 collapsed lines</span></div></div><div><div><div>1</div></div><div><span>// 这三行默认折叠</span></div></div><div><div><div>2</div></div><div><span>import</span><span> { </span><span>a</span><span> } </span><span>from</span><span> </span><span>"a"</span><span>;</span></div></div><div><div><div>3</div></div><div><span>import</span><span> { </span><span>b</span><span> } </span><span>from</span><span> </span><span>"b"</span><span>;</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span><span>(</span><span>a</span><span>, </span><span>b</span><span>);</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div></div></div></section><section><h3>不止是代码块<a href="#不止是代码块"><span>#</span></a></h3><p>标签页内可以放任意内容，例如文字、列表或图片：</p><div><div>说明列表</div><div><p>这是一段普通的段落内容。</p></div><div><ul>
<li>列表项一</li>
<li>列表项二</li>
</ul></div></div><div><div><div></div><div>Tip</div></div><div><p>标签栏在构建期生成，默认展开第一项；支持鼠标点击与键盘 <kbd>←</kbd> / <kbd>→</kbd> / <kbd>Home</kbd> / <kbd>End</kbd> 切换。</p></div></div></section><section><h3>在提醒框内使用（MDX 组件）<a href="#在提醒框内使用mdx-组件"><span>#</span></a></h3><p><code>::: code-group</code> 和 <code>::: tip</code> 等 Docusaurus 风格提醒框都使用 <code>:::</code> 容器语法，而 micromark-directive 规定父子容器的冒号数必须不同，因此 <code>::: code-group</code> <strong>无法嵌套在 <code>::: tip</code> 等提醒框内</strong>（整块会失效）。</p><p>这种情况改用 MDX 组件 <a href="@/components/common/TabGroup.svelte"><code>TabGroup</code></a>：MDX 组件不经过 <code>:::</code> 指令解析，在提醒框内外都能正常使用，也方便日后扩展更多 UI 组件。把文章后缀改为 <code>.mdx</code>，从统一入口 <a href="@/components/firefly-mdx.ts"><code>@/components/firefly-mdx</code></a> 引入（可一次引入多个组件）：</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>import</span><span> { </span><span>TabGroup</span><span> } </span><span>from</span><span> </span><span>"@/components/firefly-mdx"</span><span>;</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>:::tip</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>&lt;</span><span>TabGroup</span><span> </span><span>labels</span><span>=</span><span>{</span><span>[</span><span>"test.js"</span><span>, </span><span>"test.py"</span><span>]</span><span>}</span><span> </span><span>client</span><span>:</span><span>load</span><span>&gt;</span></div></div><div><div><div>6</div></div><div><span>  </span><span>```</span><span>js</span></div></div><div><div><div>7</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>1</span><span>)</span></div></div><div><div><div>8</div></div><div><span>  </span><span>```</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>  </span><span>```</span><span>py</span></div></div><div><div><div>11</div></div><div><span>  </span><span>print</span><span>(</span><span>"hello world"</span><span>)</span></div></div><div><div><div>12</div></div><div><span>  </span><span>```</span></div></div><div><div><div>13</div></div><div><span>&lt;/</span><span>TabGroup</span><span>&gt;</span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>:::</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><div><div><div></div><div>Tip</div></div><div><ul>
<li><code>labels</code> 数组给每个代码块声明标签，顺序一一对应</li>
<li>组件用 <code>client:load</code> 激活标签切换</li>
</ul></div></div></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/guide/firefly-layout-system/</id>
      <title type="text">Firefly 布局系统详解</title>
      <published>1970-01-03T00:00:00.000Z</published>
      <updated>1970-01-03T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/guide/firefly-layout-system/"/>
      <summary type="text">深入了解 Firefly 的布局系统，包括侧边栏布局（左侧/双侧）和文章列表布局（列表/网格），以及自适应网格列数。</summary>
      <content type="html"><![CDATA[<section><h2>📖 概述<a href="#-概述"><span>#</span></a></h2><p>Firefly 提供了灵活的布局系统，允许您根据内容需求和个人喜好自定义博客的视觉呈现方式。布局系统主要包括<strong>侧边栏布局</strong>和<strong>文章列表布局</strong>两个维度，它们相互配合，共同决定了页面的整体结构。</p><p>本文将详细介绍 Firefly 的各种布局模式、它们的特点、使用场景，以及不同布局组合的效果。</p><hr /><div><figure><img alt="左侧边栏+列表布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/left-list.CdJfuugk_ZcvYgE.webp" /><figcaption>左侧边栏+列表布局</figcaption></figure><figure><img alt="右侧边栏+网格布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/right-grid2.BDLeNFG9_Z17tfMy.webp" /><figcaption>右侧边栏+网格布局</figcaption></figure><figure><img alt="左侧边栏+三列网格布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/left-grid3.DCIbm9j3_14NFVO.webp" /><figcaption>左侧边栏+三列网格布局</figcaption></figure></div><div><figure><img alt="双侧边栏+列表布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/both-list.CybtDZTU_Z1HdlBI.webp" /><figcaption>双侧边栏+列表布局</figcaption></figure><figure><img alt="双侧边栏+网格布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/both-grid.B-BFe9Al_ZYJNaA.webp" /><figcaption>双侧边栏+网格布局</figcaption></figure><figure><img alt="双侧边栏+网格瀑布流布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/masonry.BgzRsBcp_2n4JeY.webp" /><figcaption>双侧边栏+网格瀑布流布局</figcaption></figure></div></section>
<section><h2>一、侧边栏布局系统<a href="#一侧边栏布局系统"><span>#</span></a></h2><p>侧边栏是博客页面的重要组成部分，用于展示导航、分类、标签、统计信息等辅助内容。Firefly 支持两种侧边栏布局模式。</p><section><h3>1.1 单侧边栏模式<a href="#11-单侧边栏模式"><span>#</span></a></h3><section><h4>左侧边栏 (position: “left”)<a href="#左侧边栏-position-left"><span>#</span></a></h4><p></p><figure><img alt="左侧边栏布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/left-list.CdJfuugk_ZcvYgE.webp" /><figcaption>左侧边栏布局</figcaption></figure><p></p></section><section><h4>右侧边栏 (position: “right”)<a href="#右侧边栏-position-right"><span>#</span></a></h4><p></p><figure><img alt="右侧边栏布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/right-grid2.BDLeNFG9_Z17tfMy.webp" /><figcaption>右侧边栏布局</figcaption></figure><p></p></section><section><h4>特点<a href="#特点"><span>#</span></a></h4><ul>
<li>侧边栏固定在页面其中一侧</li>
<li>文章阅读区域体验更佳，更宽敞</li>
<li>更加简约，没有那么紧凑</li>
</ul></section><section><h4>适用场景<a href="#适用场景"><span>#</span></a></h4><ul>
<li>传统博客风格</li>
<li>强调导航和分类的博客</li>
<li>需要突出用户资料的个人博客</li>
<li>内容为主，辅助信息次之的场景</li>
</ul><div><div><div></div><div>Tip</div></div><div><p>文章详情页显示哪几侧，由**各组件的 <code>showOnPostPage</code>（以及 <code>hideOnNonPostPage</code>）**决定：某一侧在当前页型下没有任何可见组件时，该列会自动收起，把空间让给内容栏。</p><p>如果想在文章页同时显示双侧边栏，把 <code>position</code> 设为 <code>"both"</code>，并给两侧组件配好 <code>showOnPostPage</code> 即可。</p></div></div></section><section><h4>配置示例<a href="#配置示例"><span>#</span></a></h4><div><figure><figcaption><span>src/config/sidebarConfig.ts</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>const</span><span> </span><span>sidebarLayoutConfig</span><span>:</span><span> </span><span>SidebarLayoutConfig</span><span> </span><span>=</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>enable</span><span>:</span><span> </span><span>true</span><span>,</span></div></div><div><div><div>3</div></div><div><span>  </span><span>position</span><span>:</span><span> </span><span>"left"</span><span>, </span><span>// 左侧边栏</span></div></div><div><div><div>4</div></div><div><span>};</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section></section><section><h3>1.2 双侧边栏模式 (position: “both”)<a href="#12-双侧边栏模式-position-both"><span>#</span></a></h3><section><h4>特点<a href="#特点-1"><span>#</span></a></h4><ul>
<li>左右两侧同时存在侧边栏</li>
<li>主内容区域位于中间</li>
<li>最大化利用屏幕空间</li>
<li>可以展示更多辅助信息</li>
<li>适合宽屏显示器</li>
</ul></section><section><h4>布局结构<a href="#布局结构"><span>#</span></a></h4><p></p><figure><img alt="双侧边栏+列表布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/both-list.CybtDZTU_Z1HdlBI.webp" /><figcaption>双侧边栏+列表布局</figcaption></figure><p></p><p></p><figure><img alt="双侧边栏+网格布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/both-grid.B-BFe9Al_ZYJNaA.webp" /><figcaption>双侧边栏+网格布局</figcaption></figure><p></p></section><section><h4>适用场景<a href="#适用场景-1"><span>#</span></a></h4><ul>
<li>宽屏桌面端浏览</li>
<li>信息密集型博客</li>
<li>需要展示大量辅助内容</li>
<li>专业性强的技术博客</li>
</ul></section><section><h4>配置示例<a href="#配置示例-1"><span>#</span></a></h4><div><figure><figcaption><span>src/config/sidebarConfig.ts</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>const</span><span> </span><span>sidebarLayoutConfig</span><span>:</span><span> </span><span>SidebarLayoutConfig</span><span> </span><span>=</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>enable</span><span>:</span><span> </span><span>true</span><span>,</span></div></div><div><div><div>3</div></div><div><span>  </span><span>position</span><span>:</span><span> </span><span>"both"</span><span>, </span><span>// 双侧边栏</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section></section></section>
<section><h2>二、文章列表布局系统<a href="#二文章列表布局系统"><span>#</span></a></h2><p>文章列表是博客首页和归档页的核心内容，Firefly 提供两种展示方式，并支持多种网格配置。</p><section><h3>2.1 列表模式 (defaultMode: “list”)<a href="#21-列表模式-defaultmode-list"><span>#</span></a></h3><section><h4>特点<a href="#特点-2"><span>#</span></a></h4><ul>
<li>单列纵向排列</li>
<li>显示文章封面图，可配置在左侧或右侧</li>
<li>展示更多文章摘要</li>
<li>适合深度阅读</li>
</ul></section><section><h4>列表布局结构<a href="#列表布局结构"><span>#</span></a></h4><p></p><figure><img alt="列表模式布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/left-list.CdJfuugk_ZcvYgE.webp" /><figcaption>列表模式布局</figcaption></figure><p></p></section><section><h4>封面位置<a href="#封面位置"><span>#</span></a></h4><p>列表模式的封面图默认在卡片右侧，可以通过 <code>coverPosition</code> 改到左侧。改到左侧后，标题前的主题色竖线会自动隐藏（它是贴着卡片左边缘的设计），腾出的间距留给正文。</p><p>网格模式的封面固定在卡片顶部，不受这项配置影响。</p></section><section><h4>优点<a href="#优点"><span>#</span></a></h4><ul>
<li>✅ 视觉冲击力强，封面图吸引眼球</li>
<li>✅ 可以展示更多文章信息（摘要、标签等）</li>
<li>✅ 适合图片内容丰富的博客</li>
<li>✅ 移动端友好，单列更易阅读</li>
<li>✅ 兼容所有侧边栏配置（单侧、双侧）</li>
</ul></section><section><h4>配置示例<a href="#配置示例-2"><span>#</span></a></h4><div><figure><figcaption><span>src/config/siteConfig.ts</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>const</span><span> </span><span>siteConfig</span><span>:</span><span> </span><span>SiteConfig</span><span> </span><span>=</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>postListLayout</span><span>:</span><span> {</span></div></div><div><div><div>3</div></div><div><span>    </span><span>defaultMode</span><span>:</span><span> </span><span>"list"</span><span>,    </span><span>// 列表模式</span></div></div><div><div><div>4</div></div><div><span>    </span><span>coverPosition</span><span>:</span><span> </span><span>"right"</span><span>, </span><span>// 封面图位置："right" 右侧，"left" 左侧</span></div></div><div><div><div>5</div></div><div><span><span>  </span></span><span>},</span></div></div><div><div><div>6</div></div><div><span>};</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section></section><section><h3>2.2 网格模式 (defaultMode: “grid”)<a href="#22-网格模式-defaultmode-grid"><span>#</span></a></h3><section><h4>特点<a href="#特点-3"><span>#</span></a></h4><ul>
<li>自适应列数，根据浏览器宽度自动调整</li>
<li>紧凑布局，信息密度高</li>
<li>适合快速浏览</li>
</ul></section><section><h4>自适应网格<a href="#自适应网格"><span>#</span></a></h4><p>网格模式通过 <code>columnWidth</code> 配置卡片的最小宽度（单位 px），浏览器会根据容器可用宽度自动计算能容纳多少列。</p><p></p><figure><img alt="网格布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/left-grid3.DCIbm9j3_14NFVO.webp" /><figcaption>网格布局</figcaption></figure><p></p></section><section><h4>配置示例<a href="#配置示例-3"><span>#</span></a></h4><div><figure><figcaption><span>src/config/siteConfig.ts</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>const</span><span> </span><span>siteConfig</span><span>:</span><span> </span><span>SiteConfig</span><span> </span><span>=</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>postListLayout</span><span>:</span><span> {</span></div></div><div><div><div>3</div></div><div><span>    </span><span>defaultMode</span><span>:</span><span> </span><span>"grid"</span><span>,</span></div></div><div><div><div>4</div></div><div><span>    </span><span>grid</span><span>:</span><span> {</span></div></div><div><div><div>5</div></div><div><span>      </span><span>masonry</span><span>:</span><span> </span><span>true</span><span>,      </span><span>// 开启瀑布流</span></div></div><div><div><div>6</div></div><div><span>      </span><span>columnWidth</span><span>:</span><span> </span><span>320</span><span>,   </span><span>// 卡片最小宽度(px)，浏览器自动计算列数</span></div></div><div><div><div>7</div></div><div><span><span>    </span></span><span>},</span></div></div><div><div><div>8</div></div><div><span><span>  </span></span><span>},</span></div></div><div><div><div>9</div></div><div><span>};</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section></section><section><h3>2.3 瀑布流布局 (Masonry)<a href="#23-瀑布流布局-masonry"><span>#</span></a></h3><p>Firefly 的网格模式内置了智能瀑布流布局支持，解决了网格布局中因图文混合文章导致的卡片高度不一致导致的空白问题。</p><p></p><figure><img alt="瀑布流布局" loading="lazy" width="2192" height="1233" src="/blog/_astro/masonry.BgzRsBcp_2n4JeY.webp" /><figcaption>瀑布流布局</figcaption></figure><p></p><ul>
<li><strong>智能排版</strong>：自动将卡片放置到最短的列，最大化利用垂直空间。</li>
<li><strong>消除空白</strong>：通过绝对定位精确计算每个卡片的位置，让卡片紧贴上方卡片，消除垂直方向的空白间隙。</li>
<li><strong>自适应列数</strong>：瀑布流同样根据 <code>columnWidth</code> 和容器宽度动态计算列数，无需固定配置。</li>
<li><strong>配置灵活</strong>：您可以在 <code>siteConfig.ts</code> 中通过 <code>postListLayout.grid.masonry</code> 选项自由开启或关闭此功能。</li>
</ul><hr /></section></section>
<section><h2>三、布局组合指南<a href="#三布局组合指南"><span>#</span></a></h2><p>Firefly 允许您自由组合侧边栏和文章列表布局。以下是各种组合的效果说明。</p>

<table><thead><tr><th>侧边栏模式</th><th>文章列表模式</th><th>推荐度</th><th>适用场景</th></tr></thead><tbody><tr><td>单侧边栏</td><td>列表模式</td><td>⭐⭐⭐⭐⭐</td><td>摄影、设计、生活类博客，强调图片和沉浸感</td></tr><tr><td>单侧边栏</td><td>网格模式</td><td>⭐⭐⭐⭐⭐</td><td>技术、笔记类博客，平衡阅读与检索效率</td></tr><tr><td>双侧边栏</td><td>列表模式</td><td>⭐⭐⭐⭐⭐</td><td>需要展示大量侧边栏信息的站点</td></tr><tr><td>双侧边栏</td><td>网格模式</td><td>⭐⭐⭐⭐⭐</td><td>极客风格，追求最高信息密度</td></tr></tbody></table><hr /></section>
<section><h2>四、响应式布局行为<a href="#四响应式布局行为"><span>#</span></a></h2><p>Firefly 的布局系统具有智能的响应式设计，会根据屏幕尺寸自动调整。</p><p>为了保证最佳阅读体验，系统会在屏幕变窄时自动调整布局：</p><ol>
<li><strong>网格列数自动减少</strong>：网格模式的列数由 <code>columnWidth</code> 和容器宽度自动决定，屏幕越窄列数越少。</li>
<li><strong>列表模式 -&gt; 网格模式</strong>：当屏幕宽度小于 380px（超小屏设备）时，列表模式会自动切换为网格模式，以保证卡片内容的可读性。</li>
<li><strong>双侧边栏 -&gt; 单侧边栏</strong>：当屏幕宽度小于 1280px 时，会根据<code>tabletSidebar</code>配置显示单侧边栏，隐藏其中一个侧边栏，文章目录导航会切换成浮动目录导航。</li>
</ol><hr /></section>
<section><h2>五、常见问题<a href="#五常见问题"><span>#</span></a></h2><section><h3>Q1: 如何调整网格列数？<a href="#q1-如何调整网格列数"><span>#</span></a></h3><p><strong>A</strong>: 通过 <code>columnWidth</code> 配置卡片最小宽度即可。值越小，同等宽度下列数越多；值越大，列数越少。浏览器会自动根据可用宽度计算最佳列数。</p><hr /></section></section>
<section><h2>六、总结<a href="#六总结"><span>#</span></a></h2><p>Firefly 的布局系统给予了您更大的自由度，您都可以通过简单的配置实现。</p><p>我们建议您根据自己的内容类型和目标读者的设备偏好，尝试不同的组合，找到最适合您的博客形态。</p><hr /></section>
<section><h2>相关链接<a href="#相关链接"><span>#</span></a></h2><ul>
<li>📚 <a href="https://docs-firefly.cuteleaf.cn/config/sidebarConfig-usage/" target="_blank">侧边栏配置文档</a></li>
<li>📚 <a href="https://docs-firefly.cuteleaf.cn/config/siteConfig-usage/" target="_blank">站点配置文档</a></li>
<li>🏠 <a href="https://docs-firefly.cuteleaf.cn/" target="_blank">Firefly 官方文档</a></li>
<li>⭐ <a href="https://github.com/CuteLeaf/Firefly" target="_blank">Firefly GitHub</a></li>
</ul></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/guide/firefly-wiki-link/</id>
      <title type="text">Firefly Wiki Link 内部链接示例</title>
      <published>1970-01-03T00:00:00.000Z</published>
      <updated>1970-01-03T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/guide/firefly-wiki-link/"/>
      <summary type="text">在 Firefly 文章中使用 Obsidian 风格的 Wiki Link 内部链接，并自动生成文章链接卡片。</summary>
      <content type="html"><![CDATA[<p>Firefly 支持在 Markdown、MDX 文章中使用 Obsidian 风格的 Wiki Link 内部链接。链接目标填写文章的 slug 或文件路径，都不需要包含扩展名，具体匹配规则见下文「链接目标的三种写法」。</p>
<section><h2>文章链接卡片<a href="#文章链接卡片"><span>#</span></a></h2><p><code>[[slug]]</code> 单独成段时，会自动读取目标文章的标题、描述、发布时间、分类、标签和封面，渲染为链接卡片：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>[</span><span>firefly</span><span>]</span><span>]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>[</span><span>[</span><span>guide/index</span><span>]</span><span>]</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>[</span><span>[</span><span>markdown-extended</span><span>]</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><a href="/posts/firefly/"><div><div>Firefly 一款清新美观的 Astro 博客主题模板</div><div>Firefly 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板，专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈，提供了丰富的功能模块和高度可定制的界面，让您能够轻松打造出专业且美观的个人博客网站。</div><div><span>1970-01-02</span><span>文章示例</span><span><span>#Markdown</span><span>#Firefly</span><span>#博客</span><span>#主题</span><span>#模板</span></span></div></div><div><img alt="" loading="lazy" width="480" height="259" src="/blog/_astro/firefly2.dxmXG905_Z1NduI2.webp" /></div></a><a href="/posts/guide/"><div><div>Firefly 简单使用指南</div><div>如何使用 Firefly 博客模板。</div><div><span>1970-01-02</span><span>博客指南</span><span><span>#Firefly</span><span>#博客</span><span>#Markdown</span><span>#指南</span></span></div></div><div><img alt="" loading="lazy" width="480" height="270" src="/blog/_astro/cover.bDPQizdp_1ie5MQ.webp" /></div></a><a href="/posts/markdown-extended/"><div><div>Markdown 扩展功能</div><div>了解 Firefly 中的 Markdown 功能</div><div><span>1970-01-01</span><span>文章示例</span><span><span>#演示</span><span>#示例</span><span>#Markdown</span><span>#Firefly</span></span></div></div></a></section>
<section><h2>行内链接<a href="#行内链接"><span>#</span></a></h2><p><code>[[slug]]</code> 出现在正文中间时，渲染为普通链接，链接文字自动使用目标文章的标题</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>请参阅 [</span><span>[</span><span>firefly</span><span>]</span><span>] 了解主题特性。</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>请参阅 <a href="/posts/firefly/">Firefly 一款清新美观的 Astro 博客主题模板</a> 了解主题特性。</p></section>
<section><h2>自定义显示标题<a href="#自定义显示标题"><span>#</span></a></h2><p>在 <code>|</code> 后填写链接的显示文字。行内链接会用它替换文章标题；单独成段时依然渲染为卡片，卡片标题使用自定义文字，描述、时间、分类、标签和封面仍然读取目标文章：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>请参阅 [</span><span>[</span><span>firefly|主题介绍</span><span>]</span><span>] 了解主题特性。</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>[[firefly|Firefly 主题介绍]]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>请参阅 <a href="/posts/firefly/">主题介绍</a> 了解主题特性。</p><a href="/posts/firefly/"><div><div>Firefly 主题介绍</div><div>Firefly 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板，专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈，提供了丰富的功能模块和高度可定制的界面，让您能够轻松打造出专业且美观的个人博客网站。</div><div><span>1970-01-02</span><span>文章示例</span><span><span>#Markdown</span><span>#Firefly</span><span>#博客</span><span>#主题</span><span>#模板</span></span></div></div><div><img alt="" loading="lazy" width="480" height="259" src="/blog/_astro/firefly2.dxmXG905_Z1NduI2.webp" /></div></a><p>一个例外：如果 <code>|</code> 后的文字只是把链接目标又抄了一遍（<code>[[guide/index|index]]</code>），会被当作无效别名忽略，仍然显示文章标题。Obsidian 在插入的链接时会自动补上这样的别名，避免笔记里显示一长串路径，这个例外就是为它准备的。</p></section>
<section><h2>链接目标的三种写法<a href="#链接目标的三种写法"><span>#</span></a></h2><p>用 Obsidian 管理文章时，把 <code>src/content/posts</code> 目录本身作为 Obsidian 仓库（vault）打开。下文提到的「仓库根目录」都指这个目录，它正好也是 Firefly 解析链接路径的起点。</p><p>链接目标按以下顺序匹配：</p>

<table><thead><tr><th>写法</th><th>示例</th><th>在 Obsidian 中</th></tr></thead><tbody><tr><td>frontmatter 的 <code>slug</code></td><td><code>[[firefly-wiki-link]]</code></td><td>✗ 不支持</td></tr><tr><td>文件路径（相对仓库根目录）</td><td><code>[[guide/firefly-layout-system]]</code></td><td>✓ 需改设置（推荐）</td></tr><tr><td>裸文件名（仓库内唯一时）</td><td><code>[[firefly-layout-system]]</code></td><td>✓ 默认即是</td></tr></tbody></table><section><h3>第一种：slug<a href="#第一种slug"><span>#</span></a></h3><p><code>slug</code> 写法在 Obsidian 中不支持，<code>slug</code> 是 Firefly 自己的概念，Obsidian 不读取 frontmatter 里的 <code>slug</code>，所以按 slug 写的链接在 Obsidian 里既不会自动补全，也点不动，只有构建出的站点上能正常跳转。如果你主要在 Obsidian 里写作，用下面两种写法。</p></section><section><h3>第二种：文件路径（推荐）<a href="#第二种文件路径推荐"><span>#</span></a></h3><p>文件路径写法需要改 Obsidian 设置，在 <code>设置 → 文件与链接 → 链接 → 内部链接类型</code> 中选择<strong>基于仓库根目录的绝对路径</strong>，Obsidian 插入的链接才会带上目录：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>[</span><span>guide/firefly-layout-system|firefly-layout-system</span><span>]</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><a href="/posts/guide/firefly-layout-system/"><div><div>Firefly 布局系统详解</div><div>深入了解 Firefly 的布局系统，包括侧边栏布局（左侧/双侧）和文章列表布局（列表/网格），以及自适应网格列数。</div><div><span>1970-01-03</span><span>博客指南</span><span><span>#Firefly</span><span>#布局</span><span>#博客</span><span>#指南</span></span></div></div><div><img alt="" loading="lazy" width="480" height="270" src="/blog/_astro/firefly1.CZCuCN4V_ZYyxRR.webp" /></div></a><p>因为仓库根目录就是 <code>src/content/posts</code>，Obsidian 写出的这个路径和 Firefly 需要的路径完全一致，不需要任何额外转换。</p><p>上面这行末尾的 <code>|firefly-layout-system</code> 是 Obsidian 自动补的别名，Firefly 会忽略它，卡片标题仍然取文章的 title，除非你把它修改和文件名不一致，才会变成你修改后的别名。</p><p>内部链接类型下拉框里的<strong>基于当前笔记的相对路径</strong>只在同目录内可用：它给同目录文章生成的是裸文件名，能正常匹配；但跨目录时会生成 <code>../</code> 前缀，Firefly 无法解析，链接会按原文显示。</p></section><section><h3>第三种：裸文件名<a href="#第三种裸文件名"><span>#</span></a></h3><p>「内部链接类型」的默认值就是<strong>尽可能简短的形式</strong>：只要文件名在整个仓库里唯一，Obsidian 插入的链接就只有文件名，不带目录。这种写法不需要改任何设置，效果和写完整路径完全一致：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>[</span><span>firefly-layout-system</span><span>]</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><a href="/posts/guide/firefly-layout-system/"><div><div>Firefly 布局系统详解</div><div>深入了解 Firefly 的布局系统，包括侧边栏布局（左侧/双侧）和文章列表布局（列表/网格），以及自适应网格列数。</div><div><span>1970-01-03</span><span>博客指南</span><span><span>#Firefly</span><span>#布局</span><span>#博客</span><span>#指南</span></span></div></div><div><img alt="" loading="lazy" width="480" height="270" src="/blog/_astro/firefly1.CZCuCN4V_ZYyxRR.webp" /></div></a><p>文件名重名时这种写法会失效，构建日志里会给出提示，改用完整文件路径即可，所以推荐直接修改 Obsidian 内部链接类型设置为<strong>基于仓库根目录的绝对路径</strong>，使用第二种文件路径写法，一劳永逸</p></section></section>
<section><h2>链接到其他文章的标题<a href="#链接到其他文章的标题"><span>#</span></a></h2><p>在文章 slug 后添加 <code>#标题</code>。带标题锚点的链接始终渲染为普通链接：</p><p><a href="/posts/code-examples/#%E8%AF%AD%E6%B3%95%E9%AB%98%E4%BA%AE">查看代码块语法高亮</a></p><p><a href="/posts/guide/firefly-layout-system/#%E7%9B%B8%E5%85%B3%E9%93%BE%E6%8E%A5">Firefly 布局系统详解#相关链接</a></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>[</span><span>code-examples#语法高亮|查看代码块语法高亮</span><span>]</span><span>]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>[</span><span>[</span><span>guide/firefly-layout-system#相关链接|firefly-layout-system</span><span>]</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>标题锚点使用与页面标题相同的 slug 规则，因此中文、空格和大小写都会按页面实际生成的 ID 处理。</p></section>
<section><h2>链接到本页标题<a href="#链接到本页标题"><span>#</span></a></h2><p>省略文章 slug，只填写标题即可链接到当前文章：</p><p><a href="#%E6%9C%AC%E9%A1%B5%E7%9B%AE%E6%A0%87">跳转到本页目标</a></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>[</span><span>#本页目标|跳转到本页目标</span><span>]</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>本页目标<a href="#本页目标"><span>#</span></a></h2><p>这是本页 Wiki Link 指向的标题。</p></section>
<section><h2>不支持附件嵌入<a href="#不支持附件嵌入"><span>#</span></a></h2><p>附件嵌入语法目前不会被转换，会按原文显示：</p><p>![[image.png]]</p><p>行内代码和代码块中的 <code>[[firefly]]</code> 也不会被转换。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/encrypted-demo/</id>
      <title type="text">Firefly 文章加密</title>
      <published>1970-01-02T00:00:00.000Z</published>
      <updated>1970-01-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/encrypted-demo/"/>
      <summary type="text">这是一篇密码保护的示例文章，用于演示文章加密功能。</summary>
      <content type="html"><![CDATA[本文已加密保护，请访问网站查看。]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/katex-math-example/</id>
      <title type="text">KaTeX 数学公式示例</title>
      <published>1970-01-02T00:00:00.000Z</published>
      <updated>1970-01-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/katex-math-example/"/>
      <summary type="text">展示 Firefly 主题对 KaTeX 数学公式的支持，包括行内公式、块级公式和复杂数学符号。</summary>
      <content type="html"><![CDATA[<p>本文展示了 <a href="https://github.com/CuteLeaf/Firefly" target="_blank">Firefly</a> 主题对 KaTeX 数学公式的渲染支持。</p>
<section><h2>行内公式 (Inline)<a href="#行内公式-inline"><span>#</span></a></h2><p>行内公式使用单个 <code>$</code> 符号包裹。</p><p>例如：欧拉公式 <span><span>eiπ+1=0e^{i\pi} + 1 = 0</span><span><span><span></span><span><span>e</span><span><span><span><span><span><span></span><span><span><span>iπ</span></span></span></span></span></span></span></span></span><span></span><span>+</span><span></span></span><span><span></span><span>1</span><span></span><span>=</span><span></span></span><span><span></span><span>0</span></span></span></span> 是数学中最优美的公式之一。</p><p>质能方程 <span><span>E=mc2E = mc^2</span><span><span><span></span><span>E</span><span></span><span>=</span><span></span></span><span><span></span><span>m</span><span><span>c</span><span><span><span><span><span><span></span><span><span>2</span></span></span></span></span></span></span></span></span></span></span> 也是家喻户晓。</p></section>
<section><h2>块级公式 (Block)<a href="#块级公式-block"><span>#</span></a></h2><p>块级公式使用两个 <code>$$</code> 符号包裹，会居中显示。</p><span><span><span>∫−∞∞e−x2dx=π\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}</span><span><span><span></span><span><span>∫</span><span><span><span><span><span><span></span><span><span><span>−</span><span>∞</span></span></span></span><span><span></span><span><span><span>∞</span></span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span><span></span><span><span>e</span><span><span><span><span><span><span></span><span><span><span>−</span><span><span>x</span><span><span><span><span><span><span></span><span><span>2</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span><span>d</span><span>x</span><span></span><span>=</span><span></span></span><span><span></span><span><span><span><span><span><span></span><span><span>π</span></span></span><span><span></span><span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span></span></span><span><span><span>x=−b±b2−4ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}</span><span><span><span></span><span>x</span><span></span><span>=</span><span></span></span><span><span></span><span><span></span><span><span><span><span><span><span></span><span><span>2</span><span>a</span></span></span><span><span></span><span></span></span><span><span></span><span><span>−</span><span>b</span><span></span><span>±</span><span></span><span><span><span><span><span><span></span><span><span><span>b</span><span><span><span><span><span><span></span><span><span>2</span></span></span></span></span></span></span></span><span></span><span>−</span><span></span><span>4</span><span>a</span><span>c</span></span></span><span><span></span><span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span></span></span></span></span></section>
<section><h2>复杂示例<a href="#复杂示例"><span>#</span></a></h2><section><h3>矩阵 (Matrices)<a href="#矩阵-matrices"><span>#</span></a></h3><span><span><span>(abcd)(αβγδ)=(aα+bγaβ+bδcα+dγcβ+dδ)\begin{pmatrix}
a &amp; b \\
c &amp; d
\end{pmatrix}
\begin{pmatrix}
\alpha &amp; \beta \\
\gamma &amp; \delta
\end{pmatrix} =
\begin{pmatrix}
a\alpha + b\gamma &amp; a\beta + b\delta \\
c\alpha + d\gamma &amp; c\beta + d\delta
\end{pmatrix}</span><span><span><span></span><span><span><span>(</span></span><span><span><span><span><span><span><span><span></span><span><span>a</span></span></span><span><span></span><span><span>c</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span><span></span><span><span><span><span><span><span></span><span><span>b</span></span></span><span><span></span><span><span>d</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span><span><span>)</span></span></span><span></span><span><span><span>(</span></span><span><span><span><span><span><span><span><span></span><span><span>α</span></span></span><span><span></span><span><span>γ</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span><span></span><span><span><span><span><span><span></span><span><span>β</span></span></span><span><span></span><span><span>δ</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span><span><span>)</span></span></span><span></span><span>=</span><span></span></span><span><span></span><span><span><span>(</span></span><span><span><span><span><span><span><span><span></span><span><span>a</span><span>α</span><span></span><span>+</span><span></span><span>bγ</span></span></span><span><span></span><span><span>c</span><span>α</span><span></span><span>+</span><span></span><span>d</span><span>γ</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span><span></span><span><span><span><span><span><span></span><span><span>a</span><span>β</span><span></span><span>+</span><span></span><span>b</span><span>δ</span></span></span><span><span></span><span><span>c</span><span>β</span><span></span><span>+</span><span></span><span>d</span><span>δ</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span><span><span>)</span></span></span></span></span></span></span></section><section><h3>极限与求和 (Limits and Sums)<a href="#极限与求和-limits-and-sums"><span>#</span></a></h3><span><span><span>∑n=1∞1n2=π26\sum_{n=1}^{\infty} \frac{1}{n^2} = \frac{\pi^2}{6}</span><span><span><span></span><span><span><span><span><span><span></span><span><span><span>n</span><span>=</span><span>1</span></span></span></span><span><span></span><span><span>∑</span></span></span><span><span></span><span><span><span>∞</span></span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span><span><span></span><span><span><span><span><span><span></span><span><span><span>n</span><span><span><span><span><span><span></span><span><span>2</span></span></span></span></span></span></span></span></span></span><span><span></span><span></span></span><span><span></span><span><span>1</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span><span></span><span>=</span><span></span></span><span><span></span><span><span></span><span><span><span><span><span><span></span><span><span>6</span></span></span><span><span></span><span></span></span><span><span></span><span><span><span>π</span><span><span><span><span><span><span></span><span><span>2</span></span></span></span></span></span></span></span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span></span></span></span></span><span><span><span>lim⁡x→0sin⁡xx=1\lim_{x \to 0} \frac{\sin x}{x} = 1</span><span><span><span></span><span><span><span><span><span><span></span><span><span><span>x</span><span>→</span><span>0</span></span></span></span><span><span></span><span><span>lim</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span><span><span></span><span><span><span><span><span><span></span><span><span>x</span></span></span><span><span></span><span></span></span><span><span></span><span><span>sin</span><span></span><span>x</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span><span></span><span>=</span><span></span></span><span><span></span><span>1</span></span></span></span></span></section><section><h3>麦克斯韦方程组 (Maxwell’s Equations)<a href="#麦克斯韦方程组-maxwells-equations"><span>#</span></a></h3><span><span><span>∇⋅E=ρε0∇⋅B=0∇×E=−∂B∂t∇×B=μ0J+μ0ε0∂E∂t\begin{aligned}
\nabla \cdot \mathbf{E} &amp;= \frac{\rho}{\varepsilon_0} \\
\nabla \cdot \mathbf{B} &amp;= 0 \\
\nabla \times \mathbf{E} &amp;= -\frac{\partial \mathbf{B}}{\partial t} \\
\nabla \times \mathbf{B} &amp;= \mu_0\mathbf{J} + \mu_0\varepsilon_0\frac{\partial \mathbf{E}}{\partial t}
\end{aligned}</span><span><span><span></span><span><span><span><span><span><span><span><span></span><span><span>∇</span><span></span><span>⋅</span><span></span><span>E</span></span></span><span><span></span><span><span>∇</span><span></span><span>⋅</span><span></span><span>B</span></span></span><span><span></span><span><span>∇</span><span></span><span>×</span><span></span><span>E</span></span></span><span><span></span><span><span>∇</span><span></span><span>×</span><span></span><span>B</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span><span><span><span><span><span></span><span><span></span><span></span><span>=</span><span></span><span><span></span><span><span><span><span><span><span></span><span><span><span>ε</span><span><span><span><span><span><span></span><span><span>0</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span></span><span><span></span><span></span></span><span><span></span><span><span>ρ</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span></span></span><span><span></span><span><span></span><span></span><span>=</span><span></span><span>0</span></span></span><span><span></span><span><span></span><span></span><span>=</span><span></span><span>−</span><span><span></span><span><span><span><span><span><span></span><span><span>∂</span><span>t</span></span></span><span><span></span><span></span></span><span><span></span><span><span>∂</span><span>B</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span></span></span><span><span></span><span><span></span><span></span><span>=</span><span></span><span><span>μ</span><span><span><span><span><span><span></span><span><span>0</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span><span>J</span><span></span><span>+</span><span></span><span><span>μ</span><span><span><span><span><span><span></span><span><span>0</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span><span><span>ε</span><span><span><span><span><span><span></span><span><span>0</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span><span><span></span><span><span><span><span><span><span></span><span><span>∂</span><span>t</span></span></span><span><span></span><span></span></span><span><span></span><span><span>∂</span><span>E</span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span><span></span></span></span></span></span><span>​</span></span><span><span><span></span></span></span></span></span></span></span></span></span></span></span></section><section><h3>化学方程式 (Chemical Equations)<a href="#化学方程式-chemical-equations"><span>#</span></a></h3><span><span><span>\ceCH4+2O2−&gt;CO2+2H2O\ce{CH4 + 2O2 -&gt; CO2 + 2H2O}</span><span><span><span></span><span><span>\ce</span></span><span><span>C</span><span>H</span><span>4</span><span></span><span>+</span><span></span><span>2</span><span>O</span><span>2</span><span>−</span><span></span><span>&gt;</span><span></span><span>C</span><span>O</span><span>2</span><span></span><span>+</span><span></span><span>2</span><span>H</span><span>2</span><span>O</span></span></span></span></span></span></section></section>
<section><h2>更多符号<a href="#更多符号"><span>#</span></a></h2>

<table><thead><tr><th>符号</th><th>代码</th><th>渲染结果</th></tr></thead><tbody><tr><td>Alpha</td><td><code>\alpha</code></td><td><span><span>α\alpha</span><span><span><span></span><span>α</span></span></span></span></td></tr><tr><td>Beta</td><td><code>\beta</code></td><td><span><span>β\beta</span><span><span><span></span><span>β</span></span></span></span></td></tr><tr><td>Gamma</td><td><code>\Gamma</code></td><td><span><span>Γ\Gamma</span><span><span><span></span><span>Γ</span></span></span></span></td></tr><tr><td>Pi</td><td><code>\pi</code></td><td><span><span>π\pi</span><span><span><span></span><span>π</span></span></span></span></td></tr><tr><td>Infinity</td><td><code>\infty</code></td><td><span><span>∞\infty</span><span><span><span></span><span>∞</span></span></span></span></td></tr><tr><td>Right Arrow</td><td><code>\rightarrow</code></td><td><span><span>→\rightarrow</span><span><span><span></span><span>→</span></span></span></span></td></tr><tr><td>Partial</td><td><code>\partial</code></td><td><span><span>∂\partial</span><span><span><span></span><span>∂</span></span></span></span></td></tr></tbody></table><p>更多 KaTeX 语法请参考 <a href="https://katex.org/docs/supported.html" target="_blank">KaTeX Supported Functions</a>。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/mdx-example/</id>
      <title type="text">MDX 格式文章示例</title>
      <published>1970-01-02T00:00:00.000Z</published>
      <updated>1970-01-02T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/mdx-example/"/>
      <summary type="text">这是一个 MDX 格式的示例文章，展示了如何在 Markdown 中使用 JSX。</summary>
      <content type="html"><![CDATA[<div><div><div></div><div>Tip</div></div><div><p><a href="https://github.com/CuteLeaf/Firefly" target="_blank">Firefly</a> 支持 <code>MDX</code> 和 <code>Markdown</code> 两种类型的文章，你可以在文章中混合使用两种格式，如果没有特别复杂内容和需求，推荐使用 Markdown 格式就够了。</p></div></div>
<section><h2>Markdown 和 MDX 的区别<a href="#markdown-和-mdx-的区别"><span>#</span></a></h2><ul>
<li>Markdown (MD) 是一种轻量级标记语言，允许用户使用纯文本格式编写文档，然后将其转换为格式化的HTML。它因其简洁易用的语法而广受欢迎，特别适合编写文档和博客文章。</li>
<li>MDX 是一种扩展了 Markdown 语法的格式，允许在 Markdown 文档中无缝地插入 JSX 代码。通过 MDX，用户可以在文档中嵌入 React 组件，从而实现更丰富的交互性和动态性。</li>
</ul>

<table><thead><tr><th>特性</th><th>Markdown</th><th>MDX</th></tr></thead><tbody><tr><td>基础语法</td><td>支持 (CommonMark)</td><td>支持 (CommonMark)</td></tr><tr><td>HTML 标签</td><td>支持</td><td>支持 (作为 JSX)</td></tr><tr><td>组件导入</td><td>不支持</td><td>支持 (import)</td></tr><tr><td>动态数据</td><td>不支持</td><td>支持 (JS 表达式)</td></tr><tr><td>样式定制</td><td>有限 (class/style)</td><td>灵活 (className/CSS-in-JS)</td></tr></tbody></table><hr /></section>
<section><h2>Firefly 内置的专属 MDX UI 组件<a href="#firefly-内置的专属-mdx-ui-组件"><span>#</span></a></h2><p>这里列出 Firefly 内置的 MDX UI 组件，方便在 MDX 文章中直接使用。</p><section><h3>Tab分组：<code>TabGroup</code><a href="#tab分组tabgroup"><span>#</span></a></h3><p>用于创建可切换的标签页，方便在文章中展示不同语言或不同版本的代码等等。</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>TabGroup</span><span> </span><span>labels</span><span>=</span><span>{</span><span>[</span><span>"test.js"</span><span>, </span><span>"test.py"</span><span>]</span><span>}</span><span> </span><span>client</span><span>:</span><span>load</span><span>&gt;</span></div></div><div><div><div>2</div></div><div><span>  </span><span>```</span><span>js</span></div></div><div><div><div>3</div></div><div><span><span>  </span></span><span>console</span><span>.</span><span>log</span><span>(</span><span>1</span><span>)</span></div></div><div><div><div>4</div></div><div><span>  </span><span>```</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span>  </span><span>```</span><span>py</span></div></div><div><div><div>7</div></div><div><span>  </span><span>print</span><span>(</span><span>"hello world"</span><span>)</span></div></div><div><div><div>8</div></div><div><span>  </span><span>```</span></div></div><div><div><div>9</div></div><div><span>&lt;/</span><span>TabGroup</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div>test.jstest.py</div> <div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span>console</span><span>.</span></span><span>log</span><span>(</span><span>1</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>print</span><span>(</span><span>"hello world"</span><span>)</span></div></div></code></pre><div><div></div><div></div></div></figure></div></div></div><hr /></section><section><h3>时间线：<code>Timeline</code> / <code>TimelineItem</code><a href="#时间线timeline--timelineitem"><span>#</span></a></h3>

<table><thead><tr><th>属性</th><th>必填</th><th>说明</th></tr></thead><tbody><tr><td><code>date</code></td><td>否</td><td>时间标签，如 “2024-03-10”</td></tr><tr><td><code>title</code></td><td>否</td><td>条目标题</td></tr><tr><td><code>type</code></td><td>否</td><td>节点颜色，default 为主题色，其余对应提示框色板（tip / note / important / warning / caution）</td></tr><tr><td><code>icon</code></td><td>否</td><td>内置图标名，显示在圆点内：star / rocket / git / flag / book / heart / zap / bug / tag / calendar / code / edit</td></tr><tr><td>正文</td><td>否</td><td><code>&lt;TimelineItem&gt;</code> 标签内的内容，支持 Markdown</td></tr></tbody></table><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>Timeline</span><span>&gt;</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>&lt;</span><span>TimelineItem</span><span> </span><span>date</span><span>=</span><span>"2026-08-16"</span><span> </span><span>title</span><span>=</span><span>"新版本发布"</span><span> </span><span>icon</span><span>=</span><span>"rocket"</span><span>&gt;</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>发布了全新版本，带来以下更新：</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span><span>    </span></span><span>- 新增时间线组件</span></div></div><div><div><div>6</div></div><div><span><span>    </span></span><span>- 改进暗色主题</span></div></div><div><div><div>7</div></div><div>
</div></div><div><div><div>8</div></div><div><span><span>    </span></span><span>正文里支持 </span><span>**</span><span>Markdown</span><span>**</span><span> 内容。</span></div></div><div><div><div>9</div></div><div><span><span>  </span></span><span>&lt;/</span><span>TimelineItem</span><span>&gt;</span></div></div><div><div><div>10</div></div><div><span><span>  </span></span><span>&lt;</span><span>TimelineItem</span><span> </span><span>date</span><span>=</span><span>"2025-11-02"</span><span> </span><span>title</span><span>=</span><span>"站点上线"</span><span> </span><span>type</span><span>=</span><span>"tip"</span><span> </span><span>icon</span><span>=</span><span>"flag"</span><span>&gt;</span></div></div><div><div><div>11</div></div><div><span><span>    </span></span><span>欢迎来到我的博客。</span></div></div><div><div><div>12</div></div><div><span><span>  </span></span><span>&lt;/</span><span>TimelineItem</span><span>&gt;</span></div></div><div><div><div>13</div></div><div><span><span>  </span></span><span>&lt;</span><span>TimelineItem</span><span> </span><span>date</span><span>=</span><span>"2025-06-15"</span><span> </span><span>title</span><span>=</span><span>"项目立项"</span><span> </span><span>type</span><span>=</span><span>"note"</span><span>&gt;</span></div></div><div><div><div>14</div></div><div><span><span>    </span></span><span>开始规划 Firefly 主题。</span></div></div><div><div><div>15</div></div><div><span><span>  </span></span><span>&lt;/</span><span>TimelineItem</span><span>&gt;</span></div></div><div><div><div>16</div></div><div><span>&lt;/</span><span>Timeline</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><ol><li><div><span></span></div><div><div>2026-08-16</div><div>新版本发布</div><div><p>发布了全新版本，带来以下更新：</p><ul>
<li>新增时间线组件</li>
<li>改进暗色主题</li>
</ul><p>正文里支持 <strong>Markdown</strong> 内容。</p></div></div></li><li><div><span></span></div><div><div>2025-11-02</div><div>站点上线</div><div><p>欢迎来到我的博客。</p></div></div></li><li><div></div><div><div>2025-06-15</div><div>项目立项</div><div><p>开始规划 Firefly 主题。</p></div></div></li></ol><hr /></section><section><h3>步骤条：<code>Steps</code> / <code>StepItem</code><a href="#步骤条steps--stepitem"><span>#</span></a></h3><p>编号步骤条，适合教程、部署流程。编号自动生成，无需手动传序号。</p>

<table><thead><tr><th>属性</th><th>必填</th><th>说明</th></tr></thead><tbody><tr><td><code>title</code></td><td>否</td><td>步骤标题</td></tr><tr><td><code>type</code></td><td>否</td><td>编号圆颜色，default 为主题色，其余对应提示框色板（tip / note / important / warning / caution）</td></tr><tr><td><code>icon</code></td><td>否</td><td>内置图标名，有图标时显示图标而非数字（star / rocket / git / flag / book / heart / zap / bug / tag / calendar / code / edit）</td></tr><tr><td>正文</td><td>否</td><td><code>&lt;StepItem&gt;</code> 标签内的内容，支持 Markdown</td></tr></tbody></table><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>Steps</span><span>&gt;</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>&lt;</span><span>StepItem</span><span> </span><span>title</span><span>=</span><span>"安装依赖"</span><span>&gt;</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>运行 </span><span>`</span><span>pnpm install</span><span>`</span><span>。</span></div></div><div><div><div>4</div></div><div><span><span>  </span></span><span>&lt;/</span><span>StepItem</span><span>&gt;</span></div></div><div><div><div>5</div></div><div><span><span>  </span></span><span>&lt;</span><span>StepItem</span><span> </span><span>title</span><span>=</span><span>"启动开发服务器"</span><span> </span><span>type</span><span>=</span><span>"tip"</span><span> </span><span>icon</span><span>=</span><span>"rocket"</span><span>&gt;</span></div></div><div><div><div>6</div></div><div><span><span>    </span></span><span>运行 </span><span>`</span><span>pnpm dev</span><span>`</span><span>，打开 </span><span>`</span><span>localhost:4321</span><span>`</span><span>。</span></div></div><div><div><div>7</div></div><div><span><span>  </span></span><span>&lt;/</span><span>StepItem</span><span>&gt;</span></div></div><div><div><div>8</div></div><div><span><span>  </span></span><span>&lt;</span><span>StepItem</span><span> </span><span>title</span><span>=</span><span>"编写文章"</span><span>&gt;</span></div></div><div><div><div>9</div></div><div><span><span>    </span></span><span>在 </span><span>`</span><span>src/content/posts/</span><span>`</span><span> 新建 </span><span>`</span><span>.mdx</span><span>`</span><span> 文章。</span></div></div><div><div><div>10</div></div><div><span><span>  </span></span><span>&lt;/</span><span>StepItem</span><span>&gt;</span></div></div><div><div><div>11</div></div><div><span>&lt;/</span><span>Steps</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><ol><li><span></span><div><div>安装依赖</div><div><p>运行 <code>pnpm install</code>。</p></div></div></li><li><span><span></span></span><div><div>启动开发服务器</div><div><p>运行 <code>pnpm dev</code>，打开 <code>localhost:4321</code>。</p></div></div></li><li><span></span><div><div>编写文章</div><div><p>在 <code>src/content/posts/</code> 新建 <code>.mdx</code> 文章。</p></div></div></li></ol><hr /></section><section><h3>徽章：<code>Badge</code><a href="#徽章badge"><span>#</span></a></h3><p>内联彩色小徽章，可嵌在段落或标题里。</p>

<table><thead><tr><th>属性</th><th>必填</th><th>说明</th></tr></thead><tbody><tr><td><code>type</code></td><td>否</td><td>default 为主题色，其余对应提示框色板（tip / note / important / warning / caution）</td></tr></tbody></table><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;</span><span>Badge</span><span> </span><span>type</span><span>=</span><span>"tip"</span><span>&gt;提示&lt;/</span><span>Badge</span><span>&gt; &lt;</span><span>Badge</span><span> </span><span>type</span><span>=</span><span>"warning"</span><span>&gt;注意&lt;/</span><span>Badge</span><span>&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><span>新功能</span><span>提示</span><span>笔记</span><span>重要</span><span>注意</span><span>危险</span><hr /><p>更多信息，请查看 <a href="https://mdxjs.com/" target="_blank">MDX 文档</a></p></section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/markdown-extended/</id>
      <title type="text">Markdown 扩展功能</title>
      <published>1970-01-01T00:00:00.000Z</published>
      <updated>1970-01-01T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/markdown-extended/"/>
      <summary type="text">了解 Firefly 中的 Markdown 功能</summary>
      <content type="html"><![CDATA[<section><h2>GitHub 仓库卡片<a href="#github-仓库卡片"><span>#</span></a></h2><p>您可以添加链接到 GitHub 仓库的动态卡片，在页面加载时，仓库信息会从 GitHub API 获取。</p><a href="https://github.com/CuteLeaf/Firefly" target="_blank"><div><div><div><div></div><div>CuteLeaf</div></div><div>/</div><div>Firefly</div></div><div></div></div><div>🍀Firefly, fresh and aesthetic Astro blog theme template. </div><div><div>—</div><div>—</div><div>MIT</div><span>Astro</span></div></a><p>使用代码 <code>::github{repo="CuteLeaf/Firefly"}</code> 创建 GitHub 仓库卡片。</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>::github{repo="CuteLeaf/Firefly"}</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>提醒框(Admonitions)配置<a href="#提醒框admonitions配置"><span>#</span></a></h2><p>Firefly 采用了 <a href="https://github.com/lin-stephanie/rehype-callouts" target="_blank">rehype-callouts</a> 插件，支持了四种风格的提醒框主题：<code>GitHub</code>、<code>Obsidian</code>、<code>VitePress</code> 和 <code>Docusaurus</code>。您可以在 <code>src/config/siteConfig.ts</code> 中进行配置：</p><div><figure><figcaption><span>src/config/siteConfig.ts</span></figcaption><pre><code><div><div><div>1</div></div><div><span>export</span><span> </span><span>const</span><span> </span><span>siteConfig</span><span>:</span><span> </span><span>SiteConfig</span><span> </span><span>=</span><span> {</span></div></div><div><div><div>2</div></div><div><span>  </span><span>// ...</span></div></div><div><div><div>3</div></div><div><span>  </span><span>rehypeCallouts</span><span>:</span><span> {</span></div></div><div><div><div>4</div></div><div><span>    </span><span>// 选项: "github" | "obsidian" | "vitepress" | "docusaurus"</span></div></div><div><div><div>5</div></div><div><span>    </span><span>theme</span><span>:</span><span> </span><span>"github"</span><span>,</span></div></div><div><div><div>6</div></div><div><span><span>  </span></span><span>},</span></div></div><div><div><div>7</div></div><div><span>  </span><span>// ...</span></div></div><div><div><div>8</div></div><div><span>};</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>注意：<strong>更改配置后需要重启开发服务器才能生效。</strong></p><p>以下是各个主题支持的类型列表，每个主题风格和语法不同，可根据喜好选择。</p><section><h3>1. GitHub 主题风格<a href="#1-github-主题风格"><span>#</span></a></h3><p>这是 GitHub 官方支持的 5 种基本类型。</p><p></p><figure><img alt="GitHub" loading="lazy" width="2144" height="1086" src="/blog/_astro/github.urcbElKG_ZgwdoT.webp" /><figcaption>GitHub</figcaption></figure><p></p><p><strong>基本语法</strong></p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; </span><span>[</span><span>!NOTE</span><span>]</span><span> NOTE</span></div></div><div><div><div>2</div></div><div><span>&gt; 突出显示用户应该考虑的信息。</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>&gt; </span><span>[</span><span>!TIP</span><span>]</span><span> TIP</span></div></div><div><div><div>5</div></div><div><span>&gt; 可选信息，帮助用户更成功。</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>&gt; </span><span>[</span><span>!IMPORTANT</span><span>]</span><span> IMPORTANT</span></div></div><div><div><div>8</div></div><div><span>&gt; 用户成功所必需的关键信息。</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>&gt; </span><span>[</span><span>!WARNING</span><span>]</span><span> WARNING</span></div></div><div><div><div>11</div></div><div><span>&gt; 关键内容，需要立即注意。</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>&gt; </span><span>[</span><span>!CAUTION</span><span>]</span><span> CAUTION</span></div></div><div><div><div>14</div></div><div><span>&gt; 行动的负面潜在后果。</span></div></div><div><div><div>15</div></div><div>
</div></div><div><div><div>16</div></div><div><span>&gt; </span><span>[</span><span>!NOTE</span><span>]</span><span> 自定义标题</span></div></div><div><div><div>17</div></div><div><span>&gt; 这是一个带有自定义标题的示例。</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><hr /></section><section><h3>2. Obsidian 主题风格<a href="#2-obsidian-主题风格"><span>#</span></a></h3><p><a href="https://obsidian.md/" target="_blank">Obsidian</a> 风格支持非常丰富的类型和别名。</p>
点击展开 Obsidian 语法列表<div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; </span><span>[</span><span>!NOTE</span><span>]</span><span> NOTE</span></div></div><div><div><div>2</div></div><div><span>&gt; 通用的笔记块。</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>&gt; </span><span>[</span><span>!ABSTRACT</span><span>]</span><span> ABSTRACT</span></div></div><div><div><div>5</div></div><div><span>&gt; 文章的摘要。</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>&gt; </span><span>[</span><span>!SUMMARY</span><span>]</span><span> SUMMARY</span></div></div><div><div><div>8</div></div><div><span>&gt; 文章的总结（同 Abstract）。</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>&gt; </span><span>[</span><span>!TLDR</span><span>]</span><span> TLDR</span></div></div><div><div><div>11</div></div><div><span>&gt; 太长不看（同 Abstract）。</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>&gt; </span><span>[</span><span>!INFO</span><span>]</span><span> INFO</span></div></div><div><div><div>14</div></div><div><span>&gt; 提供额外信息。</span></div></div><div><div><div>15</div></div><div>
</div></div><div><div><div>16</div></div><div><span>&gt; </span><span>[</span><span>!TODO</span><span>]</span><span> TODO</span></div></div><div><div><div>17</div></div><div><span>&gt; 需要完成的事项。</span></div></div><div><div><div>18</div></div><div>
</div></div><div><div><div>19</div></div><div><span>&gt; </span><span>[</span><span>!TIP</span><span>]</span><span> TIP</span></div></div><div><div><div>20</div></div><div><span>&gt; 实用技巧或提示。</span></div></div><div><div><div>21</div></div><div>
</div></div><div><div><div>22</div></div><div><span>&gt; </span><span>[</span><span>!HINT</span><span>]</span><span> HINT</span></div></div><div><div><div>23</div></div><div><span>&gt; 暗示（同 Tip）。</span></div></div><div><div><div>24</div></div><div>
</div></div><div><div><div>25</div></div><div><span>&gt; </span><span>[</span><span>!IMPORTANT</span><span>]</span><span> IMPORTANT</span></div></div><div><div><div>26</div></div><div><span>&gt; 重要信息（Obsidian 风格通常使用类似的图标）。</span></div></div><div><div><div>27</div></div><div>
</div></div><div><div><div>28</div></div><div><span>&gt; </span><span>[</span><span>!SUCCESS</span><span>]</span><span> SUCCESS</span></div></div><div><div><div>29</div></div><div><span>&gt; 操作成功。</span></div></div><div><div><div>30</div></div><div>
</div></div><div><div><div>31</div></div><div><span>&gt; </span><span>[</span><span>!CHECK</span><span>]</span><span> CHECK</span></div></div><div><div><div>32</div></div><div><span>&gt; 检查通过（同 Success）。</span></div></div><div><div><div>33</div></div><div>
</div></div><div><div><div>34</div></div><div><span>&gt; </span><span>[</span><span>!DONE</span><span>]</span><span> DONE</span></div></div><div><div><div>35</div></div><div><span>&gt; 已完成（同 Success）。</span></div></div><div><div><div>36</div></div><div>
</div></div><div><div><div>37</div></div><div><span>&gt; </span><span>[</span><span>!QUESTION</span><span>]</span><span> QUESTION</span></div></div><div><div><div>38</div></div><div><span>&gt; 提出问题。</span></div></div><div><div><div>39</div></div><div>
</div></div><div><div><div>40</div></div><div><span>&gt; </span><span>[</span><span>!HELP</span><span>]</span><span> HELP</span></div></div><div><div><div>41</div></div><div><span>&gt; 寻求帮助（同 Question）。</span></div></div><div><div><div>42</div></div><div>
</div></div><div><div><div>43</div></div><div><span>&gt; </span><span>[</span><span>!FAQ</span><span>]</span><span> FAQ</span></div></div><div><div><div>44</div></div><div><span>&gt; 常见问题（同 Question）。</span></div></div><div><div><div>45</div></div><div>
</div></div><div><div><div>46</div></div><div><span>&gt; </span><span>[</span><span>!WARNING</span><span>]</span><span> WARNING</span></div></div><div><div><div>47</div></div><div><span>&gt; 警告信息。</span></div></div><div><div><div>48</div></div><div>
</div></div><div><div><div>49</div></div><div><span>&gt; </span><span>[</span><span>!CAUTION</span><span>]</span><span> CAUTION</span></div></div><div><div><div>50</div></div><div><span>&gt; 注意事项（同 Warning）。</span></div></div><div><div><div>51</div></div><div>
</div></div><div><div><div>52</div></div><div><span>&gt; </span><span>[</span><span>!ATTENTION</span><span>]</span><span> ATTENTION</span></div></div><div><div><div>53</div></div><div><span>&gt; 引起注意（同 Warning）。</span></div></div><div><div><div>54</div></div><div>
</div></div><div><div><div>55</div></div><div><span>&gt; </span><span>[</span><span>!FAILURE</span><span>]</span><span> FAILURE</span></div></div><div><div><div>56</div></div><div><span>&gt; 操作失败。</span></div></div><div><div><div>57</div></div><div>
</div></div><div><div><div>58</div></div><div><span>&gt; </span><span>[</span><span>!FAIL</span><span>]</span><span> FAIL</span></div></div><div><div><div>59</div></div><div><span>&gt; 失败（同 Failure）。</span></div></div><div><div><div>60</div></div><div>
</div></div><div><div><div>61</div></div><div><span>&gt; </span><span>[</span><span>!MISSING</span><span>]</span><span> MISSING</span></div></div><div><div><div>62</div></div><div><span>&gt; 缺失内容（同 Failure）。</span></div></div><div><div><div>63</div></div><div>
</div></div><div><div><div>64</div></div><div><span>&gt; </span><span>[</span><span>!DANGER</span><span>]</span><span> DANGER</span></div></div><div><div><div>65</div></div><div><span>&gt; 危险操作警告。</span></div></div><div><div><div>66</div></div><div>
</div></div><div><div><div>67</div></div><div><span>&gt; </span><span>[</span><span>!ERROR</span><span>]</span><span> ERROR</span></div></div><div><div><div>68</div></div><div><span>&gt; 错误信息（同 Danger）。</span></div></div><div><div><div>69</div></div><div>
</div></div><div><div><div>70</div></div><div><span>&gt; </span><span>[</span><span>!BUG</span><span>]</span><span> BUG</span></div></div><div><div><div>71</div></div><div><span>&gt; 报告软件缺陷。</span></div></div><div><div><div>72</div></div><div>
</div></div><div><div><div>73</div></div><div><span>&gt; </span><span>[</span><span>!EXAMPLE</span><span>]</span><span> EXAMPLE</span></div></div><div><div><div>74</div></div><div><span>&gt; 展示一个例子。</span></div></div><div><div><div>75</div></div><div>
</div></div><div><div><div>76</div></div><div><span>&gt; </span><span>[</span><span>!QUOTE</span><span>]</span><span> QUOTE</span></div></div><div><div><div>77</div></div><div><span>&gt; 引用一段话。</span></div></div><div><div><div>78</div></div><div>
</div></div><div><div><div>79</div></div><div><span>&gt; </span><span>[</span><span>!CITE</span><span>]</span><span> CITE</span></div></div><div><div><div>80</div></div><div><span>&gt; 引证（同 Quote）。</span></div></div><div><div><div>81</div></div><div>
</div></div><div><div><div>82</div></div><div><span>&gt; </span><span>[</span><span>!NOTE</span><span>]</span><span> 自定义标题</span></div></div><div><div><div>83</div></div><div><span>&gt; 这是一个带有自定义标题的示例。</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p></p><figure><img alt="Obsidian" loading="lazy" width="2144" height="1320" src="/blog/_astro/obsidian.Cwb2iYzd_Z1nlDXY.webp" /><figcaption>Obsidian</figcaption></figure><p></p><hr /></section><section><h3>3. VitePress 主题风格<a href="#3-vitepress-主题风格"><span>#</span></a></h3><p><a href="https://vitepress.dev/" target="_blank">VitePress</a> 风格提供了一套现代化的、扁平的默认样式。目前仅包含与 GitHub 一致的 <strong>5 种</strong> 基础类型。</p>
点击展开 VitePress 语法列表<div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; </span><span>[</span><span>!NOTE</span><span>]</span><span> NOTE</span></div></div><div><div><div>2</div></div><div><span>&gt; 对应 GitHub 的 Note。</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>&gt; </span><span>[</span><span>!TIP</span><span>]</span><span> TIP</span></div></div><div><div><div>5</div></div><div><span>&gt; 对应 GitHub 的 Tip。</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>&gt; </span><span>[</span><span>!IMPORTANT</span><span>]</span><span> IMPORTANT</span></div></div><div><div><div>8</div></div><div><span>&gt; 对应 GitHub 的 Important。</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span>&gt; </span><span>[</span><span>!WARNING</span><span>]</span><span> WARNING</span></div></div><div><div><div>11</div></div><div><span>&gt; 对应 GitHub 的 Warning。</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>&gt; </span><span>[</span><span>!CAUTION</span><span>]</span><span> CAUTION</span></div></div><div><div><div>14</div></div><div><span>&gt; 对应 GitHub 的 Caution。</span></div></div><div><div><div>15</div></div><div>
</div></div><div><div><div>16</div></div><div><span>&gt; </span><span>[</span><span>!TIP</span><span>]</span><span> 自定义标题</span></div></div><div><div><div>17</div></div><div><span>&gt; VitePress 风格同样支持自定义标题。</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p></p><figure><img alt="VitePress" loading="lazy" width="2144" height="1318" src="/blog/_astro/vitepress.D2YnjBWE_1bskL7.webp" /><figcaption>VitePress</figcaption></figure><p></p><hr /></section><section><h3>4. Docusaurus 主题风格<a href="#4-docusaurus-主题风格"><span>#</span></a></h3><p><a href="https://docusaurus.io/docs/markdown-features/admonitions" target="_blank">Docusaurus</a> 风格提供了一套现代化的提醒框样式，支持 5 种类型。</p>
点击展开 Docusaurus 语法列表 <p>支持以下类型的提醒框：<code>note</code> <code>tip</code> <code>info</code> <code>warning</code> <code>danger</code></p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>:::note</span></div></div><div><div><div>2</div></div><div><span>突出显示用户应该考虑的信息，即使在快速浏览时也是如此。</span></div></div><div><div><div>3</div></div><div><span>:::</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>:::tip</span></div></div><div><div><div>6</div></div><div><span>可选信息，帮助用户更成功。</span></div></div><div><div><div>7</div></div><div><span>:::</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>:::info</span></div></div><div><div><div>10</div></div><div><span>一般信息。</span></div></div><div><div><div>11</div></div><div><span>:::</span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span>:::warning</span></div></div><div><div><div>14</div></div><div><span>由于潜在风险需要用户立即注意的关键内容。</span></div></div><div><div><div>15</div></div><div><span>:::</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span>:::danger</span></div></div><div><div><div>18</div></div><div><span>行动的负面潜在后果。</span></div></div><div><div><div>19</div></div><div><span>:::</span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div>21</div></div><div><span>:::tip</span><span>[</span><span>自定义标题</span><span>]</span></div></div><div><div><div>22</div></div><div><span>可选信息，帮助用户更成功。</span></div></div><div><div><div>23</div></div><div><span>:::</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p></p><figure><img alt="Docusaurus" loading="lazy" width="2158" height="1394" src="/blog/_astro/docusaurus.Cu-On_k2_2gx2Gj.webp" /><figcaption>Docusaurus</figcaption></figure><p></p><hr /></section></section>
<section><h2>剧透<a href="#剧透"><span>#</span></a></h2><p>您可以为文本添加剧透。文本也支持 <strong>Markdown</strong> 语法。</p><p>内容 被隐藏了 <strong>哈哈</strong>！</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>内容 :spoiler[被隐藏了 </span><span>**哈哈**</span><span>]！</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>图片画廊网格 (Image Grid)<a href="#图片画廊网格-image-grid"><span>#</span></a></h2><p>您可以使用 <code>[grid]</code> 和 <code>[/grid]</code> 标签将多张图片纵向并排展示。这对于展示照片画廊或对比图非常有用。系统会自动根据包裹在其中的图片数量（最多支持并排展示4张）以响应式网格进行布局。</p><p><strong>自动补齐图片高度：</strong> 同一排中如果有高度、大小或者比例不一的图片，会像「九宫格画廊相册」一样自动撑满。较短或不协调的图片会自动使用 object-cover 进行完美中心裁剪补充视野。图片边框水平彻底对齐无缝隙，但被裁剪后，只有点击图片通过灯箱才能查看完整图片，所以建议尽量避免使用长宽比例不一致的图片在同一排中。</p><p><strong>图注恒定底端对齐：</strong> 不论上面的图片长宽如何变化，在同一行的所有图像解释文字（图注）都会对标到一条完美的水平基线上了。</p><div><figure><img alt="示例图片一" loading="lazy" width="3328" height="1872" src="/blog/_astro/firefly1.CZCuCN4V_1ETNz4.webp" /><figcaption>示例图片一</figcaption></figure><figure><img alt="示例图片二" loading="lazy" width="4096" height="2212" src="/blog/_astro/firefly2.dxmXG905_45Scq.webp" /><figcaption>示例图片二</figcaption></figure><figure><img alt="示例图片二" loading="lazy" width="3840" height="2160" src="/blog/_astro/firefly3.CGzFXcxi_Zxc9fh.webp" /><figcaption>示例图片二</figcaption></figure></div><p><strong>基本语法</strong></p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[</span><span>grid</span><span>]</span></div></div><div><div><div>2</div></div><div><span>![</span><span>示例图片一</span><span>]</span><span><span>(</span><span>./images/firefly1.avif</span><span>)</span></span></div></div><div><div><div>3</div></div><div><span>![</span><span>示例图片二</span><span>]</span><span><span>(</span><span>./images/firefly2.avif</span><span>)</span></span></div></div><div><div><div>4</div></div><div><span>![</span><span>示例图片二</span><span>]</span><span><span>(</span><span>./images/firefly3.avif</span><span>)</span></span></div></div><div><div><div>5</div></div><div><span>[</span><span>/grid</span><span>]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/markdown-mermaid/</id>
      <title type="text">Markdown Mermaid 图表</title>
      <published>1970-01-01T00:00:00.000Z</published>
      <updated>1970-01-01T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/markdown-mermaid/"/>
      <summary type="text">一个包含 Mermaid 的 Markdown 博客文章简单示例。</summary>
      <content type="html"><![CDATA[<section><h2>Markdown 中 Mermaid 图表完整指南<a href="#markdown-中-mermaid-图表完整指南"><span>#</span></a></h2><p>本文演示如何在 Markdown 文档中使用 Mermaid 创建各种复杂图表，包括流程图、时序图、ER 图、类图、状态图、XY 图、甘特图、思维导图等。</p><blockquote><p>Mermaid 图表由 <a href="https://github.com/Latias94/merman" target="_blank">Merman</a> 实现。Firefly 在 Astro 构建阶段生成亮色和深色两套静态 SVG，无需在浏览器中加载 Mermaid 渲染运行时。可以前往 <a href="http://frankorz.com/merman/" target="_blank">Merman Playground</a> 实时编辑语法并预览渲染结果。</p></blockquote></section>
<section><h2>流程图示例<a href="#流程图示例"><span>#</span></a></h2><p>流程图非常适合表示流程或算法步骤。</p><div><div><div><div><span></span></div><div><span><p>是</p></span></div><div><span><p>否</p></span></div><div><span><p>选项 1</p></span></div><div><span><p>选项 2</p></span></div><div><span><p>选项 3</p></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span><p>子过程详情</p></span></div><div><span></span></div><div><span></span></div><div><span><p>子步骤 1</p></span></div><div><span><p>子步骤 2</p></span></div><div><span><p>子步骤 3</p></span></div><div><span><p>开始</p></span></div><div><span><p>条件检查</p></span></div><div><span><p>处理步骤 1</p></span></div><div><span><p>处理步骤 2</p></span></div><div><span><p>另一个决策</p></span></div><div><span><p>结果 1</p></span></div><div><span><p>结果 2</p></span></div><div><span><p>结果 3</p></span></div><div><span><p>结束</p></span></div>
</div><div><div><span></span></div><div><span><p>是</p></span></div><div><span><p>否</p></span></div><div><span><p>选项 1</p></span></div><div><span><p>选项 2</p></span></div><div><span><p>选项 3</p></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span><p>子过程详情</p></span></div><div><span></span></div><div><span></span></div><div><span><p>子步骤 1</p></span></div><div><span><p>子步骤 2</p></span></div><div><span><p>子步骤 3</p></span></div><div><span><p>开始</p></span></div><div><span><p>条件检查</p></span></div><div><span><p>处理步骤 1</p></span></div><div><span><p>处理步骤 2</p></span></div><div><span><p>另一个决策</p></span></div><div><span><p>结果 1</p></span></div><div><span><p>结果 2</p></span></div><div><span><p>结果 3</p></span></div><div><span><p>结束</p></span></div>
</div></div></div></section>
<section><h2>时序图示例<a href="#时序图示例"><span>#</span></a></h2><p>时序图显示对象之间随时间的交互。</p><div><div><div>数据库服务器网页应用用户数据库服务器网页应用用户alt[认证成功][认证失败]提交登录请求发送认证请求查询用户凭据返回用户数据返回认证结果显示欢迎页面请求用户数据获取用户偏好返回偏好设置返回用户数据加载个性化界面显示错误消息提示重新输入
</div><div>数据库服务器网页应用用户数据库服务器网页应用用户alt[认证成功][认证失败]提交登录请求发送认证请求查询用户凭据返回用户数据返回认证结果显示欢迎页面请求用户数据获取用户偏好返回偏好设置返回用户数据加载个性化界面显示错误消息提示重新输入
</div></div></div></section>
<section><h2>ER 图示例<a href="#er-图示例"><span>#</span></a></h2><p>ER 图（实体关系图）非常适合表示数据库结构。</p><div><div><div>

<div><span><p>writes</p></span></div><div><span><p>posts</p></span></div><div><span><p>has</p></span></div><div><span><p>belongs to</p></span></div>
<div><span><p>USER</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>username</p></span></div><div><span></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>email</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>created_at</p></span></div><div><span></span></div><div><span></span></div><div><span><p>ARTICLE</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>title</p></span></div><div><span></span></div><div><span></span></div><div><span><p>text</p></span></div><div><span><p>content</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>published</p></span></div><div><span></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>author_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>COMMENT</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>text</p></span></div><div><span><p>content</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>created_at</p></span></div><div><span></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>user_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>article_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>CATEGORY</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>name</p></span></div><div><span></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>description</p></span></div><div><span></span></div><div><span></span></div>

</div><div>

<div><span><p>writes</p></span></div><div><span><p>posts</p></span></div><div><span><p>has</p></span></div><div><span><p>belongs to</p></span></div>
<div><span><p>USER</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>username</p></span></div><div><span></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>email</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>created_at</p></span></div><div><span></span></div><div><span></span></div><div><span><p>ARTICLE</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>title</p></span></div><div><span></span></div><div><span></span></div><div><span><p>text</p></span></div><div><span><p>content</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>published</p></span></div><div><span></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>author_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>COMMENT</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>text</p></span></div><div><span><p>content</p></span></div><div><span></span></div><div><span></span></div><div><span><p>datetime</p></span></div><div><span><p>created_at</p></span></div><div><span></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>user_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>int</p></span></div><div><span><p>article_id</p></span></div><div><span><p>FK</p></span></div><div><span></span></div><div><span><p>CATEGORY</p></span></div><div><span><p>int</p></span></div><div><span><p>id</p></span></div><div><span><p>PK</p></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>name</p></span></div><div><span></span></div><div><span></span></div><div><span><p>string</p></span></div><div><span><p>description</p></span></div><div><span></span></div><div><span></span></div>

</div></div></div></section>
<section><h2>类图示例<a href="#类图示例"><span>#</span></a></h2><p>类图显示系统的静态结构，包括类、属性、方法及其关系。</p><div><div><div><div><span><p>写作</p></span></div><div><span><p>发表</p></span></div><div><span><p>拥有</p></span></div><div><span><p>属于</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>User</p></span></div><div><span><p>+String username</p></span></div><div><span><p>+String password</p></span></div><div><span><p>+String email</p></span></div><div><span><p>+Boolean active</p></span></div><div><span><p>+login()</p></span></div><div><span><p>+logout()</p></span></div><div><span><p>+updateProfile()</p></span></div><div><span><p>Article</p></span></div><div><span><p>+String title</p></span></div><div><span><p>+String content</p></span></div><div><span><p>+Date publishDate</p></span></div><div><span><p>+Boolean published</p></span></div><div><span><p>+publish()</p></span></div><div><span><p>+edit()</p></span></div><div><span><p>+delete()</p></span></div><div><span><p>Comment</p></span></div><div><span><p>+String content</p></span></div><div><span><p>+Date commentDate</p></span></div><div><span><p>+addComment()</p></span></div><div><span><p>+deleteComment()</p></span></div><div><span><p>Category</p></span></div><div><span><p>+String name</p></span></div><div><span><p>+String description</p></span></div><div><span><p>+addArticle()</p></span></div><div><span><p>+removeArticle()</p></span></div></div><div><div><span><p>写作</p></span></div><div><span><p>发表</p></span></div><div><span><p>拥有</p></span></div><div><span><p>属于</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>1</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>*</p></span></div><div><span><p>User</p></span></div><div><span><p>+String username</p></span></div><div><span><p>+String password</p></span></div><div><span><p>+String email</p></span></div><div><span><p>+Boolean active</p></span></div><div><span><p>+login()</p></span></div><div><span><p>+logout()</p></span></div><div><span><p>+updateProfile()</p></span></div><div><span><p>Article</p></span></div><div><span><p>+String title</p></span></div><div><span><p>+String content</p></span></div><div><span><p>+Date publishDate</p></span></div><div><span><p>+Boolean published</p></span></div><div><span><p>+publish()</p></span></div><div><span><p>+edit()</p></span></div><div><span><p>+delete()</p></span></div><div><span><p>Comment</p></span></div><div><span><p>+String content</p></span></div><div><span><p>+Date commentDate</p></span></div><div><span><p>+addComment()</p></span></div><div><span><p>+deleteComment()</p></span></div><div><span><p>Category</p></span></div><div><span><p>+String name</p></span></div><div><span><p>+String description</p></span></div><div><span><p>+addArticle()</p></span></div><div><span><p>+removeArticle()</p></span></div></div></div></div></section>
<section><h2>状态图示例<a href="#状态图示例"><span>#</span></a></h2><p>状态图显示对象在其生命周期中经历的状态序列。</p><div><div><div><div><span></span></div><div><span><p>提交</p></span></div><div><span><p>拒绝</p></span></div><div><span><p>批准</p></span></div><div><span><p>发布</p></span></div><div><span><p>归档</p></span></div><div><span><p>撤回</p></span></div><div><span></span></div><div><span><p>草稿</p></span></div><div><span><p>审核中</p></span></div><div><span><p>已批准</p></span></div><div><span><p>已归档</p></span></div><div><span>已发布</span></div><div><span></span></div><div><span><p>临时隐藏</p></span></div><div><span><p>恢复</p></span></div><div><span></span></div><div><span></span></div><div><span><p>活跃</p></span></div><div><span><p>隐藏</p></span></div>
</div><div><div><span></span></div><div><span><p>提交</p></span></div><div><span><p>拒绝</p></span></div><div><span><p>批准</p></span></div><div><span><p>发布</p></span></div><div><span><p>归档</p></span></div><div><span><p>撤回</p></span></div><div><span></span></div><div><span><p>草稿</p></span></div><div><span><p>审核中</p></span></div><div><span><p>已批准</p></span></div><div><span><p>已归档</p></span></div><div><span>已发布</span></div><div><span></span></div><div><span><p>临时隐藏</p></span></div><div><span><p>恢复</p></span></div><div><span></span></div><div><span></span></div><div><span><p>活跃</p></span></div><div><span><p>隐藏</p></span></div>
</div></div></div></section>
<section><h2>XY 图示例<a href="#xy-图示例"><span>#</span></a></h2><p>XY 图表非常适合展示趋势和对比数据。</p><div><div><div>月度访问量趋势1月2月3月4月5月6月5000450040003500300025002000150010005000访问量
</div><div>月度访问量趋势1月2月3月4月5月6月5000450040003500300025002000150010005000访问量
</div></div></div></section>
<section><h2>饼图示例<a href="#饼图示例"><span>#</span></a></h2><p>饼图适合直观展示各部分在整体中的占比。</p><div><div><div>45%30%15%10%内容类型占比技术文章 [45]项目记录 [30]生活随笔 [15]其他 [10]
</div><div>45%30%15%10%内容类型占比技术文章 [45]项目记录 [30]生活随笔 [15]其他 [10]
</div></div></div></section>
<section><h2>甘特图示例<a href="#甘特图示例"><span>#</span></a></h2><p>甘特图可以按时间轴展示项目阶段、任务依赖和当前进度。</p><div><div><div>07/0107/0307/0507/0707/0907/1107/1307/1507/17需求整理 视觉设计 功能实现 内容迁移 构建检查 正式上线 准备开发发布博客版本发布计划
</div><div>07/0107/0307/0507/0707/0907/1107/1307/1507/17需求整理 视觉设计 功能实现 内容迁移 构建检查 正式上线 准备开发发布博客版本发布计划
</div></div></div></section>
<section><h2>思维导图示例<a href="#思维导图示例"><span>#</span></a></h2><p>思维导图适合梳理主题层级和知识结构。</p><div><div><div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span><p>Firefly</p></span></div><div><span><p>内容</p></span></div><div><span><p>技术文章</p></span></div><div><span><p>生活记录</p></span></div><div><span><p>体验</p></span></div><div><span><p>搜索</p></span></div><div><span><p>深色模式</p></span></div><div><span><p>图表</p></span></div><div><span><p>工程</p></span></div><div><span><p>Astro</p></span></div><div><span><p>Svelte</p></span></div><div><span><p>Merman</p></span></div>
</div><div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span></span></div><div><span><p>Firefly</p></span></div><div><span><p>内容</p></span></div><div><span><p>技术文章</p></span></div><div><span><p>生活记录</p></span></div><div><span><p>体验</p></span></div><div><span><p>搜索</p></span></div><div><span><p>深色模式</p></span></div><div><span><p>图表</p></span></div><div><span><p>工程</p></span></div><div><span><p>Astro</p></span></div><div><span><p>Svelte</p></span></div><div><span><p>Merman</p></span></div>
</div></div></div></section>
<section><h2>时间线示例<a href="#时间线示例"><span>#</span></a></h2><p>时间线用于按年份或阶段呈现项目的重要事件。</p><div><div><div>2024建立博客完成基础主题2025加入搜索与图库完善内容系统2026升级   Astro   7使用   Merman   渲染图表Firefly 演进时间线
</div><div>2024建立博客完成基础主题2025加入搜索与图库完善内容系统2026升级   Astro   7使用   Merman   渲染图表Firefly 演进时间线
</div></div></div></section>
<section><h2>用户旅程图示例<a href="#用户旅程图示例"><span>#</span></a></h2><p>用户旅程图能够描述用户在不同阶段的行为和体验评分。</p><div><div><div>读者<div><div>发现内容</div></div>发现内容读者<div><div>      打开首页</div></div>      打开首页读者<div><div>      搜索主题</div></div>      搜索主题<div><div>阅读文章</div></div>阅读文章读者<div><div>      浏览正文</div></div>      浏览正文读者<div><div>      查看图表</div></div>      查看图表<div><div>继续探索</div></div>继续探索读者<div><div>      查看相关文章</div></div>      查看相关文章读者<div><div>      分享文章</div></div>      分享文章读者浏览文章的旅程
</div><div>读者<div><div>发现内容</div></div>发现内容读者<div><div>      打开首页</div></div>      打开首页读者<div><div>      搜索主题</div></div>      搜索主题<div><div>阅读文章</div></div>阅读文章读者<div><div>      浏览正文</div></div>      浏览正文读者<div><div>      查看图表</div></div>      查看图表<div><div>继续探索</div></div>继续探索读者<div><div>      查看相关文章</div></div>      查看相关文章读者<div><div>      分享文章</div></div>      分享文章读者浏览文章的旅程
</div></div></div></section>
<section><h2>Git 图示例<a href="#git-图示例"><span>#</span></a></h2><p>Git 图可以清晰展示分支、提交和合并历史。</p><div><div><div>mainfeatureinitadd-diagramspolish-themesmerge-featurerelease
</div><div>mainfeatureinitadd-diagramspolish-themesmerge-featurerelease
</div></div></div></section>
<section><h2>看板示例<a href="#看板示例"><span>#</span></a></h2><p>看板适合展示任务在不同工作阶段之间的分布。</p><div><div><div><div><span><p>待办</p></span></div><div><span><p>进行中</p></span></div><div><span><p>已完成</p></span></div><div><span><p>整理需求</p></span></div><div><span></span></div><div><span></span></div><div><span><p>准备示例</p></span></div><div><span></span></div><div><span></span></div><div><span><p>接入 Merman</p></span></div><div><span></span></div><div><span></span></div><div><span><p>服务端渲染</p></span></div><div><span></span></div><div><span></span></div><div><span><p>亮暗主题</p></span></div><div><span></span></div><div><span></span></div>
</div><div><div><span><p>待办</p></span></div><div><span><p>进行中</p></span></div><div><span><p>已完成</p></span></div><div><span><p>整理需求</p></span></div><div><span></span></div><div><span></span></div><div><span><p>准备示例</p></span></div><div><span></span></div><div><span></span></div><div><span><p>接入 Merman</p></span></div><div><span></span></div><div><span></span></div><div><span><p>服务端渲染</p></span></div><div><span></span></div><div><span></span></div><div><span><p>亮暗主题</p></span></div><div><span></span></div><div><span></span></div>
</div></div></div></section>
<section><h2>Sankey 图示例<a href="#sankey-图示例"><span>#</span></a></h2><p>Sankey 图通过连线宽度展示流量在不同节点之间的流向。</p><div><div><div>Home
1650Post list
1200Search
450Post detail
1220Related posts
260External shares
180</div><div>Home
1650Post list
1200Search
450Post detail
1220Related posts
260External shares
180</div></div></div></section>
<section><h2>总结<a href="#总结"><span>#</span></a></h2><p>Mermaid 是在 Markdown 文档中创建各种类型图表的强大工具。本文演示了流程图、时序图、ER 图、类图、状态图、XY 图、饼图、甘特图、思维导图、时间线、用户旅程图、Git 图、看板和 Sankey 图。这些图表可以帮助您更清晰地表达复杂的概念、流程和数据结构。</p><p>要使用 Mermaid，只需在代码块中指定 mermaid 语言，并使用简洁的文本语法描述图表。图表会在构建时自动渲染为 SVG，无需客户端 JavaScript 加载。</p><p>可以前往 <a href="http://frankorz.com/merman/" target="_blank">Merman Playground</a> 尝试更多语法，再将图表代码粘贴到文章中。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/markdown-plantuml/</id>
      <title type="text">Markdown PlantUML 图表</title>
      <published>1970-01-01T00:00:00.000Z</published>
      <updated>1970-01-01T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/markdown-plantuml/"/>
      <summary type="text">用于验证 Firefly 中 PlantUML 插件渲染、主题切换与交互能力的示例文章。</summary>
      <content type="html"><![CDATA[<section><h2>Markdown 中 PlantUML 图表指南<a href="#markdown-中-plantuml-图表指南"><span>#</span></a></h2><p>PlantUML 是一种使用纯文本描述图表的工具。你只需要写一段结构化语法，就可以生成时序图、类图、用例图、活动图等常见工程图。</p><p>它特别适合写在技术博客和项目文档里：</p><ul>
<li>图表和正文一起版本管理，便于协作与审阅</li>
<li>修改图只需要改文本，适合频繁迭代</li>
<li>能和 Markdown 无缝结合，保持文档统一</li>
</ul><p>在 Firefly 中，<code>plantuml</code> 代码块会在构建阶段编码并生成服务器 SVG 地址，页面端再根据亮暗主题自动切换图源，并支持缩放、拖拽和全屏交互。</p><p>如果你想快速上手，可以记住这个最小模板：</p><div><div><img alt="@startuml
Alice -&gt; Bob: Hello
Bob --&gt; Alice: Hi
@enduml" src="https://www.plantuml.com/plantuml/svg/SoWkIImgAStDuNBCoKnELT2rKt3AJx9Iy4ZDoSddSifFKj3LjLC0orafU6HoEQJcfPJcvW00" loading="lazy" /></div></div></section>
<section><h2>活动图示例<a href="#活动图示例"><span>#</span></a></h2><div><div><img alt="@startuml
start
:用户提交订单;
if (库存充足?) then (是)
	:冻结库存;
	:创建支付单;
	if (支付成功?) then (是)
		:生成发货单;
		:通知仓库拣货;
	else (否)
		:取消订单;
		:释放库存;
	endif
else (否)
	:提示缺货;
endif
stop
@enduml" src="https://www.plantuml.com/plantuml/svg/NOuz2i9048NhtLEaZ5VO57eLmHM56CN4taODYYHYbA15mFz6BHI5ZNYQp6oyXMI38dRpcFTzl9BjbDjEfs5ITL0cWmEwT_JyH6pIqmh6CuFMgveEOWh747gzz7Of5ZIdnYrDn_1Se8H1FvRnD6yOMNQN40iCpaaSAW7937b6ruTXz6SWJ0PHzl4cwNMV8uIzkWiPRHDbnj4wlUuDIhXfSqq7VwSmyEPuSpyxCsOmnE3vdSAjIhrAVnc6dYytGZw4ykK5sscsQ8bRbKx3V0C0" loading="lazy" /></div></div></section>
<section><h2>状态图示例<a href="#状态图示例"><span>#</span></a></h2><div><div><img alt="@startuml
[*] --&gt; 草稿

草稿 --&gt; 待审核 : 提交
待审核 --&gt; 草稿 : 驳回
待审核 --&gt; 已发布 : 审核通过
已发布 --&gt; 已归档 : 到期归档
已发布 --&gt; 草稿 : 撤回修改

state 已发布 {
	[*] --&gt; 可见
	可见 --&gt; 隐藏 : 手动隐藏
	隐藏 --&gt; 可见 : 恢复展示
}

已归档 --&gt; [*]
@enduml" src="https://www.plantuml.com/plantuml/svg/SoWkIImgAStDuOhMYbNGrRLJUD7R-Np5VYuk20qMUhglzUcwXSyMx52mKdZMF-79hYLS22647WKhXPShDp-TFGzDzkdsJK_x9pxTqQnWfG0HVjamwyN-TYw414pPtadF5Yu6AUlOy6pEV0WNJHdShcUJbZoTFU_9_dNFfkpauYekIIn9HRAgceiJvgEd_UjVB6_aueJGOA6NioQycDuFCgIp-sdN2WYNYnCgZD04Kj6uwEcItgSRfpvViekhbeiBuKoGicYjM2w7rBoKqjmS0000" loading="lazy" /></div></div></section>
<section><h2>用例图示例<a href="#用例图示例"><span>#</span></a></h2><div><div><img alt="@startuml
left to right direction
actor 游客
actor 用户
actor 管理员

rectangle 博客系统 {
	usecase &quot;浏览文章&quot; as UC1
	usecase &quot;搜索内容&quot; as UC2
	usecase &quot;发表评论&quot; as UC3
	usecase &quot;点赞收藏&quot; as UC4
	usecase &quot;审核评论&quot; as UC5
	usec" src="https://www.plantuml.com/plantuml/svg/PP3BJi9058RNdASuOSz2Raj3uZFm09CoOfFI9krqPTm88XjJI8WQGv1s8ud9i02qoFFCvJ6CCf8EBh_pvJyvvsz5Z8GixddWqKk6BC3GxLunxBWXTPWR-40S5eGeyrpmp82QBkNeymzugiP3CNa6-8aGl-jH50ylWcTglLVxLxo6KXnHXqGKotARwBUHVBnNxuioaWZR5sT5FPwfJIQ6TuBlZAuMj4WcEbtgrK3pBwDh1QrkTtexbzCF_PGONI-cUIeNkPLksCj5thTEQy8DmE5rh5JEVu-ri0g7BexMmXDRix4En-hCfF5lqeGMzJjnp_i6" loading="lazy" /></div></div></section>
<section><h2>组件图示例<a href="#组件图示例"><span>#</span></a></h2><div><div><img alt="@startuml
package &quot;Firefly Site&quot; {
	[Astro App] as App
	[Markdown Parser] as Parser
	[PlantUML Encoder] as Encoder
	[Theme Switcher] as Theme
	[Search Indexer] as Search
}

cloud &quot;PlantUML Server&quot; as " src="https://www.plantuml.com/plantuml/svg/JL51QiCm43nxNp7u7dht8IIK5WeD15oVJ0-oj8sDPKcLvAIbzEz5YX9wqZ2pxCoiTY4A7zT5anDo5YT6_Jnv_j3VQAV8DNwewlSXUekzS-yG8RrKzGVXPsKl1aVX0_kiN25L_L4B4xl3AvwCjAge1LFLlusyCDhB5ELOn4nHrRSil1pnOXH_5UbAqI-Hr7PLgE_RM_PdzdMsxaY9A0OH6FMZDP5DH1kjvomNXcZl73QRROcA1Yu1BAKD5JwDbBnem1d19TzrqHYqbNEWsq3Urw61vy-LGqGud-v6rwuDGcuB9VpyeAVJ616yl4-LsWs6TT8ABdt4b6xmFz2jLZ8I2iw666Z7HgsB_WC0" loading="lazy" /></div></div></section>
<section><h2>部署图示例<a href="#部署图示例"><span>#</span></a></h2><div><div><img alt="@startuml
node &quot;User Device&quot; {
	artifact &quot;Browser&quot;
}

node &quot;CDN / Edge&quot; {
	artifact &quot;Static Assets&quot;
}

node &quot;Cloudflare Worker&quot; {
	artifact &quot;SSR Handler&quot;
}

node &quot;PlantUML Service&quot; {
	artifact &quot;SVG Re" src="https://www.plantuml.com/plantuml/svg/ROz1Jy9044RFxg_uqZlfdOD1WS11r53Hyz2TraAxYpDJE1Z_kqb3J6azxtkpxvkfaLZRr2v4pqXsoe85dwkS4toxEnAh2ieDoQF4Yx8axiTTsVdY6IcMlXoYcP5LEHvKsRGlrB7rHKt2-8XoP1bwsHPh2hw--UQrfc2xpHCobd-wilSLjXmyozNoPBGdPIGl-mFdXioYq2XoGtBqyH8mZy4uMEV-hSHaSZySWYbMopSSDCrLqwefHtYl7rC8VxMiXXELx6uVEtnKq3daSOfgezlzcPYYOCi_uIigXHhekNGp3hvjwby0" loading="lazy" /></div></div></section>
<section><h2>ER 图示例<a href="#er-图示例"><span>#</span></a></h2><div><div><img alt="@startuml
entity User {
	*id : uuid &lt;&lt;PK&gt;&gt;
	--
	username : varchar
	email : varchar
	created_at : datetime
}

entity Post {
	*id : uuid &lt;&lt;PK&gt;&gt;
	--
	author_id : uuid &lt;&lt;FK&gt;&gt;
	title : varchar
	content : " src="https://www.plantuml.com/plantuml/svg/VP2x2W9134NhoLUa5lO71X51iB6niPRiJc07vY6JZ0_KVvTTKHGVRKwIavkvA1MjCG0dzNh2ZN31CvY9TsYnLkzmEbslPZCmJGEc2fT4aT7YdahNKm73aNnuBNI5ITbjIT6Y8sNraU4A3ySwY_vnKDK-b-qhN8vGlOOtSvUJSXeioaS5iwjjyDB_KIzoZCF4R_ikYtvn3y6_bDliJa_zpzpZKo-NfiddUtYBX-ALvOqyRhDuNoGmzdxGdWJcd5oDuGO0" loading="lazy" /></div></div></section>
<section><h2>时序图示例（登录与刷新令牌）<a href="#时序图示例登录与刷新令牌"><span>#</span></a></h2><div><div><img alt="@startuml
autonumber
actor User as 用户
participant Web as 前端页面
participant API as 网关接口
participant Auth as 认证服务
database Redis as 会话缓存

用户 -&gt; 前端页面 : 输入账号密码并提交
前端页面 -&gt; 网关接口 : POST /login
网关接口 -&gt; 认证服务 : " src="https://www.plantuml.com/plantuml/svg/bP3BJi9068NtynJ_thGIbrqqk7GbyHANPYYZ4A4bxVG1M70D5GrAn42u2CPee2HUY0BwCioql8L1t0ma1jVVEJFVVu8MnIQr4t64RMheTY9CJ8GrQfXmQ14Ji0NUrGFF3L4IcpIcnP9Oft14mdF2yextvCvQhxDwM-3RePsVvkIIfP_vUPULxaHkq-WyuFSxlflYDOSLMYY2AGvZYy0UYSIiEPwERtstxetBh7U3qC8395Nu5nJmFyiitVLVxbbfoDoCrqonzpTUkfX-T90GbLH12HG8xUuVm6RSE8tfI42IAiY10hpPcZqMMRR7dJuIcAGAfg00orHPkWicEJ695JscnXdHbpghBbZJY6Kjmh2nL1RbLZVO2WJ0guxOv9hdBbYXWP0io-AJ_bUMrneWop9QRvPVW_M6-VFObO7yIPyxxNyEn2i3uQArHk6LmNJKyV9552Hwn4x4lm40" loading="lazy" /></div></div></section>
<section><h2>C4 风格容器图示例<a href="#c4-风格容器图示例"><span>#</span></a></h2><div><div><img alt="@startuml
!includeurl https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml

Person(user, &quot;博客访客&quot;, &quot;阅读文章与搜索内容&quot;)

System_Boundary(system, &quot;Firefly Blog&quot;) {
	Container(we" src="https://www.plantuml.com/plantuml/svg/PL7BJjj055tNNp7robP3l67L5I7b9GKHnQ6egyYE9udBn8x6Oq9KLQeeeLMbGDHIYWfL6fTAIAXs7w2cGOAVoTZENrHZfsaYTZFtddlkkUVCMKJ1nAuYxhvk596jGHiZK26aPZsK9ApKasMTL6pLjY0kcWQ11aaMpQfKGuh1ncOieY5TbTApCrbMMb_DI5N58X1BwTb2sZI8eXiG9sji1PU5s38DWP4b04zR7wdhXEujTHq-0VZXSJFqhlsZLy75vq5lts-V1fSEtMjIzmylSfpSi0Yi5kPDsz0Kt12iw9y0_AAEOGarm3mooxm8dd7tndk5EbGJWD-0AaZLQcn9oYBO10-0l0KHWQpYztxwdNV3xjNmapFexG_wPuF-MrwSOZ7nPYHPbdDW8_gmoJGoRQs450n7HOjLwTbkqDxpJrlqJJUuy6BwqFlj_zYPOdsa2YD76LNy0Z8nSQHgLS6RcbatW0JMrAUm6BUKSjIatuxfpldOgV1gr--tQVEb__wxttAdjLjGmSKAqnuzm8gXmMr6abNAiAGRMkJ1GNjmSqARZDF_yYAuT7YHUpxsV66R2FyIPvEZf84CyLPiHN3OyL-tWVnu2T2Jcx1xpXBBGJJAEeuXT6-77rm6Nyxdip8lHeYeDtOuDWeme-D8xi17oF_UXTurFJYAtPZa75_kTxw6daERluQ7RkYr9Z4JLyMRO_Ni47P19lLaRJrVo2mivWkvbQNbl21oSz3Gx2hw2m00" loading="lazy" /></div></div></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/markdown-tutorial/</id>
      <title type="text">Markdown 教程</title>
      <published>1970-01-01T00:00:00.000Z</published>
      <updated>1970-01-01T00:00:00.000Z</updated>
      <author><name>emn178</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/markdown-tutorial/"/>
      <summary type="text">一个简明的 Markdown 博客示例。</summary>
      <content type="html"><![CDATA[<p>这是一个展示如何编写 Markdown 文件的示例。本文档汇总了核心语法与常见扩展（GFM）。</p>
<ul>
<li><a href="#block-elements">块级元素</a>
<ul>
<li><a href="#paragraphs-and-line-breaks">段落与换行</a></li>
<li><a href="#headers">标题</a></li>
<li><a href="#blockquotes">引用</a></li>
<li><a href="#lists">列表</a></li>
<li><a href="#code-blocks">代码块</a></li>
<li><a href="#horizontal-rules">分割线</a></li>
<li><a href="#table">表格</a></li>
</ul>
</li>
<li><a href="#span-elements">内联元素</a>
<ul>
<li><a href="#links">链接</a></li>
<li><a href="#emphasis">强调</a></li>
<li><a href="#code">行内代码</a></li>
<li><a href="#images">图片</a></li>
<li><a href="#strikethrough">删除线</a></li>
</ul>
</li>
<li><a href="#miscellaneous">杂项</a>
<ul>
<li><a href="#automatic-links">自动链接</a></li>
<li><a href="#backslash-escapes">反斜杠转义</a></li>
</ul>
</li>
<li><a href="#inline-html">内联 HTML</a></li>
</ul>
<p><a></a></p>
<section><h2>块级元素<a href="#块级元素"><span>#</span></a></h2><p><a></a></p><section><h3>段落与换行<a href="#段落与换行"><span>#</span></a></h3><section><h4>段落<a href="#段落"><span>#</span></a></h4><p>HTML 标签：<code>&lt;p&gt;</code></p><p>使用一个或多个空行分隔段落。（仅包含<strong>空格</strong>或<strong>制表符</strong>的行也视为空行。）</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This will be</span></div></div><div><div><div>2</div></div><div><span>inline.</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>This is second paragraph.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This will be
inline.</p><p>This is second paragraph.</p><hr /></section><section><h4>换行<a href="#换行"><span>#</span></a></h4><p>HTML 标签：<code>&lt;br /&gt;</code></p><p>在行末添加<strong>两个或更多空格</strong>来产生换行。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This will be not</span></div></div><div><div><div>2</div></div><div><span>inline.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This will be not<br />
inline.</p><hr /><p><a></a></p></section></section><section><h3>标题<a href="#标题"><span>#</span></a></h3><p>Markdown 支持两种标题样式：Setext 与 atx。</p><section><h4>Setext<a href="#setext"><span>#</span></a></h4><p>HTML 标签：<code>&lt;h1&gt;</code>，<code>&lt;h2&gt;</code></p><p>使用<strong>等号 (=)</strong> 表示 <code>&lt;h1&gt;</code>、使用<strong>短横线 (-)</strong> 表示 <code>&lt;h2&gt;</code>，数量不限，作为“下划线”。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This is an H1</span></div></div><div><div><div>2</div></div><div><span>=============</span></div></div><div><div><div>3</div></div><div><span>This is an H2</span></div></div><div><div><div>4</div></div><div><span>-------------</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /></section></section></section>
<section><h1>This is an H1<a href="#this-is-an-h1"><span>#</span></a></h1><section><h2>This is an H2<a href="#this-is-an-h2"><span>#</span></a></h2><hr /><section><h4>atx<a href="#atx"><span>#</span></a></h4><p>HTML 标签：<code>&lt;h1&gt;</code>，<code>&lt;h2&gt;</code>，<code>&lt;h3&gt;</code>，<code>&lt;h4&gt;</code>，<code>&lt;h5&gt;</code>，<code>&lt;h6&gt;</code></p><p>在行首使用 1-6 个<strong>井号 (#)</strong>，对应 <code>&lt;h1&gt;</code> 至 <code>&lt;h6&gt;</code>。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span># This is an H1</span></div></div><div><div><div>2</div></div><div><span>## This is an H2</span></div></div><div><div><div>3</div></div><div><span>###### This is an H6</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /></section></section></section>
<section><h1>This is an H1<a href="#this-is-an-h1-1"><span>#</span></a></h1><section><h2>This is an H2<a href="#this-is-an-h2-1"><span>#</span></a></h2><section><h6>This is an H6<a href="#this-is-an-h6"><span>#</span></a></h6><hr /><p>可选：你可以在行尾“闭合” atx 标题。末尾的井号数量<strong>不必与</strong>开头一致。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span># This is an H1 #</span></div></div><div><div><div>2</div></div><div><span>## This is an H2 ##</span></div></div><div><div><div>3</div></div><div><span>### This is an H3 ######</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /></section></section></section>
<section><h1>This is an H1<a href="#this-is-an-h1-2"><span>#</span></a></h1><section><h2>This is an H2<a href="#this-is-an-h2-2"><span>#</span></a></h2><section><h3>This is an H3<a href="#this-is-an-h3"><span>#</span></a></h3><hr /><p><a></a></p></section><section><h3>引用<a href="#引用"><span>#</span></a></h3><p>HTML 标签：<code>&lt;blockquote&gt;</code></p><p>Markdown 使用邮件风格的 <strong>&gt;</strong> 作为引用符号。若手动换行并在每行前加 &gt;，显示效果最佳。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,</span></div></div><div><div><div>2</div></div><div><span>&gt; consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.</span></div></div><div><div><div>3</div></div><div><span>&gt; Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.</span></div></div><div><div><div>4</div></div><div><span>&gt;</span></div></div><div><div><div>5</div></div><div><span>&gt; Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse</span></div></div><div><div><div>6</div></div><div><span>&gt; id sem consectetuer libero luctus adipiscing.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><blockquote><p>This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.</p><p>Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.</p></blockquote><hr /><p>Markdown 允许“偷懒”：在一个硬换行段落中，只在第一行前加 &gt; 即可。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,</span></div></div><div><div><div>2</div></div><div><span>consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.</span></div></div><div><div><div>3</div></div><div><span>Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>&gt; Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse</span></div></div><div><div><div>6</div></div><div><span>id sem consectetuer libero luctus adipiscing.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><blockquote><p>This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.</p></blockquote><blockquote><p>Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.</p></blockquote><hr /><p>引用可以嵌套（引用中的引用），通过增加 &gt; 层级实现。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; This is the first level of quoting.</span></div></div><div><div><div>2</div></div><div><span>&gt;</span></div></div><div><div><div>3</div></div><div><span>&gt; &gt; This is nested blockquote.</span></div></div><div><div><div>4</div></div><div><span>&gt;</span></div></div><div><div><div>5</div></div><div><span>&gt; Back to the first level.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><blockquote><p>This is the first level of quoting.</p><blockquote><p>This is nested blockquote.</p></blockquote><p>Back to the first level.</p></blockquote><hr /><p>引用内可包含其他 Markdown 元素，包括标题、列表与代码块。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&gt; ## This is a header.</span></div></div><div><div><div>2</div></div><div><span>&gt;</span></div></div><div><div><div>3</div></div><div><span>&gt; 1.   This is the first list item.</span></div></div><div><div><div>4</div></div><div><span>&gt; 2.   This is the second list item.</span></div></div><div><div><div>5</div></div><div><span>&gt;</span></div></div><div><div><div>6</div></div><div><span>&gt; Here's some example code:</span></div></div><div><div><div>7</div></div><div><span>&gt;</span></div></div><div><div><div>8</div></div><div><span>&gt;     return shell_exec("echo $input | $markdown_script");</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><blockquote><h2>This is a header.<a href="#this-is-a-header"><span>#</span></a></h2><ol>
<li>This is the first list item.</li>
<li>This is the second list item.</li>
</ol><p>Here’s some example code:</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>return shell_exec("echo $input | $markdown_script");</span></div></div></code></pre><div><div></div><div></div></div></figure></div></blockquote><hr /><p><a></a></p></section><section><h3>列表<a href="#列表"><span>#</span></a></h3><p>Markdown 支持有序（数字）与无序（圆点）列表。</p><section><h4>无序列表<a href="#无序列表"><span>#</span></a></h4><p>HTML 标签：<code>&lt;ul&gt;</code></p><p>无序列表可使用 <strong>星号 (*)</strong>、<strong>加号 (+)</strong> 或 <strong>短横线 (-)</strong>。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>*   Red</span></div></div><div><div><div>2</div></div><div><span>*   Green</span></div></div><div><div><div>3</div></div><div><span>*   Blue</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ul>
<li>Red</li>
<li>Green</li>
<li>Blue</li>
</ul><hr /><p>等价于：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>+   Red</span></div></div><div><div><div>2</div></div><div><span>+   Green</span></div></div><div><div><div>3</div></div><div><span>+   Blue</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>或者：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>-   Red</span></div></div><div><div><div>2</div></div><div><span>-   Green</span></div></div><div><div><div>3</div></div><div><span>-   Blue</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h4>有序列表<a href="#有序列表"><span>#</span></a></h4><p>HTML 标签：<code>&lt;ol&gt;</code></p><p>有序列表使用数字加英文句点：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>1.  Bird</span></div></div><div><div><div>2</div></div><div><span>2.  McHale</span></div></div><div><div><div>3</div></div><div><span>3.  Parish</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ol>
<li>Bird</li>
<li>McHale</li>
<li>Parish</li>
</ol><hr /><p>注意：像下面这样可能会“意外触发”有序列表：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>1986. What a great season.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ol>
<li>What a great season.</li>
</ol><hr /><p>你可以用<strong>反斜杠转义 (\)</strong> 句点：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>1986\. What a great season.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>1986. What a great season.</p><hr /></section><section><h4>列表中的缩进内容<a href="#列表中的缩进内容"><span>#</span></a></h4><section><h5>列表项里的引用<a href="#列表项里的引用"><span>#</span></a></h5><p>在列表项内放置引用，需要将 &gt; 符号整体缩进：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>*   A list item with a blockquote:</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>&gt; This is a blockquote</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>&gt; inside a list item.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ul>
<li>
<p>A list item with a blockquote:</p>
<blockquote><p>This is a blockquote
inside a list item.</p></blockquote>
</li>
</ul><hr /></section><section><h5>列表项里的代码块<a href="#列表项里的代码块"><span>#</span></a></h5><p>在列表项内放置代码块，需要缩进两层——<strong>8 个空格</strong>或<strong>两个 Tab</strong>：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>*   A list item with a code block:</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span><span>        </span></span><span>&lt;code goes here&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ul>
<li>
<p>A list item with a code block:</p>
<div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;code goes here&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div>
</li>
</ul><hr /></section><section><h5>嵌套列表<a href="#嵌套列表"><span>#</span></a></h5><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>* A</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>* A1</span></div></div><div><div><div>3</div></div><div><span><span>  </span></span><span>* A2</span></div></div><div><div><div>4</div></div><div><span>* B</span></div></div><div><div><div>5</div></div><div><span>* C</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><ul>
<li>A
<ul>
<li>A1</li>
<li>A2</li>
</ul>
</li>
<li>B</li>
<li>C</li>
</ul><hr /><p><a></a></p></section></section></section><section><h3>代码块<a href="#代码块"><span>#</span></a></h3><p>HTML 标签：<code>&lt;pre&gt;</code></p><p>将代码块中的每行缩进至少<strong>4 个空格</strong>或<strong>1 个制表符</strong>。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This is a normal paragraph:</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>This is a code block.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This is a normal paragraph:</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This is a code block.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><p>代码块会一直持续，直到遇到未缩进的行（或文末）。</p><p>在代码块内，<strong>与号 (&amp;)</strong> 和尖括号 <strong>(&lt; &gt;)</strong> 会自动转为 HTML 实体。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span>    </span></span><span>&lt;div class="footer"&gt;</span></div></div><div><div><div>2</div></div><div><span><span>        </span></span><span>&amp;copy; 2004 Foo Corporation</span></div></div><div><div><div>3</div></div><div><span><span>    </span></span><span>&lt;/div&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;div class="footer"&gt;</span></div></div><div><div><div>2</div></div><div><span><span>    </span></span><span>&amp;copy; 2004 Foo Corporation</span></div></div><div><div><div>3</div></div><div><span>&lt;/div&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><p>下文的“围栏代码块”和“语法高亮”属于扩展语法，你也可以用它们来书写代码块。</p><section><h4>围栏代码块<a href="#围栏代码块"><span>#</span></a></h4><p>使用成对的反引号围起来（如下所示），就不需要四空格缩进了。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Here's an example:</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>```</span></div></div><div><div><div>4</div></div><div><span>function test() {</span></div></div><div><div><div>5</div></div><div><span><span>  </span></span><span>console.log("notice the blank line before this function?");</span></div></div><div><div><div>6</div></div><div><span>}</span></div></div><div><div><div>7</div></div><div><span>```</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>Here’s an example:</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>function test() {</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>console.log("notice the blank line before this function?");</span></div></div><div><div><div>3</div></div><div><span>}</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /></section><section><h4>语法高亮<a href="#语法高亮"><span>#</span></a></h4><p>在围栏代码块后添加可选的语言标识，即可启用语法高亮（参见支持语言列表）。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>```ruby</span></div></div><div><div><div>2</div></div><div><span>require 'redcarpet'</span></div></div><div><div><div>3</div></div><div><span>markdown = Redcarpet.new("Hello World!")</span></div></div><div><div><div>4</div></div><div><span>puts markdown.to_html</span></div></div><div><div><div>5</div></div><div><span>```</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>require </span><span>'redcarpet'</span></div></div><div><div><div>2</div></div><div><span>markdown</span><span><span> </span><span>=</span><span> </span></span><span>Redcarpet</span><span>.</span><span>new</span><span>(</span><span>"Hello World!"</span><span>)</span></div></div><div><div><div>3</div></div><div><span>puts</span><span> markdown.</span><span>to_html</span></div></div></code></pre><div><div></div><div></div></div></figure></div><hr /><p><a></a></p></section></section><section><h3>分割线（水平线）<a href="#分割线水平线"><span>#</span></a></h3><p>HTML 标签：<code>&lt;hr /&gt;</code>
一行中放置<strong>三个或以上的短横线 (-)、星号 (*) 或下划线 (_)</strong>。符号之间允许有空格。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>* * *</span></div></div><div><div><div>2</div></div><div><span>***</span></div></div><div><div><div>3</div></div><div><span>*****</span></div></div><div><div><div>4</div></div><div><span>- - -</span></div></div><div><div><div>5</div></div><div><span>---------------------------------------</span></div></div><div><div><div>6</div></div><div><span>___</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><hr /><hr /><hr /><hr /><hr /><hr /><hr /><p><a></a></p></section><section><h3>表格<a href="#表格"><span>#</span></a></h3><p>HTML 标签：<code>&lt;table&gt;</code></p><p>这是扩展语法。</p><p>用<strong>竖线 (|)</strong> 分隔列，用<strong>短横线 (-)</strong> 分隔表头，使用<strong>冒号 (:)</strong> 指定对齐方式。</p><p>两侧的<strong>竖线 (|)</strong> 与对齐可选。用于表头分隔时，每列至少需要 <strong>3 个短横线</strong>。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>| Left | Center | Right |</span></div></div><div><div><div>2</div></div><div><span>|:-----|:------:|------:|</span></div></div><div><div><div>3</div></div><div><span>|aaa   |bbb     |ccc    |</span></div></div><div><div><div>4</div></div><div><span>|ddd   |eee     |fff    |</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span><span> </span></span><span>A | B</span></div></div><div><div><div>7</div></div><div><span>---|---</span></div></div><div><div><div>8</div></div><div><span>123|456</span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div>
</div></div><div><div><div>11</div></div><div><span>A |B</span></div></div><div><div><div>12</div></div><div><span>--|--</span></div></div><div><div><div>13</div></div><div><span>12|45</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr />

<table><thead><tr><th>Left</th><th>Center</th><th>Right</th></tr></thead><tbody><tr><td>aaa</td><td>bbb</td><td>ccc</td></tr><tr><td>ddd</td><td>eee</td><td>fff</td></tr></tbody></table>

<table><thead><tr><th>A</th><th>B</th></tr></thead><tbody><tr><td>123</td><td>456</td></tr></tbody></table>

<table><thead><tr><th>A</th><th>B</th></tr></thead><tbody><tr><td>12</td><td>45</td></tr></tbody></table><hr /><p><a></a></p></section></section><section><h2>内联元素<a href="#内联元素"><span>#</span></a></h2><p><a></a></p><section><h3>链接<a href="#链接"><span>#</span></a></h3><p>HTML 标签：<code>&lt;a&gt;</code></p><p>Markdown 支持两种链接样式：行内链接与引用式链接。</p><section><h4>行内链接<a href="#行内链接"><span>#</span></a></h4><p>行内链接格式：<code>[文本](URL "标题")</code></p><p>标题可选。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This is [an example](http://example.com/ "Title") inline link.</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>[This link](http://example.net/) has no title attribute.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This is <a href="http://example.com/" target="_blank">an example</a> inline link.</p><p><a href="http://example.net/" target="_blank">This link</a> has no title attribute.</p><hr /><p>如果引用同一站点的本地资源，可以使用相对路径：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>See my [About](/about/) page for details.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>See my <a href="/about/">About</a> page for details.</p><hr /></section><section><h4>引用式链接<a href="#引用式链接"><span>#</span></a></h4><p>可以预定义链接引用。定义格式：<code>[id]: URL "标题"</code></p><p>标题同样可选。引用时使用：<code>[文本][id]</code></p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[id]: http://example.com/  "Optional Title Here"</span></div></div><div><div><div>2</div></div><div><span>This is [an example][id] reference-style link.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This is <a href="http://example.com/" target="_blank">an example</a> reference-style link.</p><hr /><p>说明：</p><ul>
<li>方括号中包含链接标识（<strong>不区分大小写</strong>，可在左侧缩进最多三格空格）；</li>
<li>随后是冒号；</li>
<li>再跟一个或多个空格（或 tab）；</li>
<li>然后是链接 URL；</li>
<li>URL 可选地用尖括号包裹；</li>
<li>可选地跟随标题属性，用引号或圆括号包裹。</li>
</ul><p>以下三种定义等价：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[foo]: http://example.com/  "Optional Title Here"</span></div></div><div><div><div>2</div></div><div><span>[foo]: http://example.com/  'Optional Title Here'</span></div></div><div><div><div>3</div></div><div><span>[foo]: http://example.com/  (Optional Title Here)</span></div></div><div><div><div>4</div></div><div><span>[foo]: &lt;http://example.com/&gt;  "Optional Title Here"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>如果使用空的方括号，则链接文本本身会作为名称。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[Google]: http://google.com/</span></div></div><div><div><div>2</div></div><div><span>[Google][]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><a href="http://google.com/" target="_blank">Google</a></p><hr /><p><a></a></p></section></section><section><h3>强调<a href="#强调"><span>#</span></a></h3><p>HTML 标签：<code>&lt;em&gt;</code>，<code>&lt;strong&gt;</code></p><p>Markdown 使用 <strong>星号 (*)</strong> 或 <strong>下划线 (_)</strong> 表示强调。<strong>一个分隔符</strong>对应 <code>&lt;em&gt;</code>；<strong>两个分隔符</strong>对应 <code>&lt;strong&gt;</code>。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>*single asterisks*</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>_single underscores_</span></div></div><div><div><div>4</div></div><div>
</div></div><div><div><div>5</div></div><div><span>**double asterisks**</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>__double underscores__</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><em>single asterisks</em></p><p><em>single underscores</em></p><p><strong>double asterisks</strong></p><p><strong>double underscores</strong></p><hr /><p>但如果两侧有空格，则会被视作普通字符而非强调语法。</p><p>你可以使用反斜杠进行转义：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>\*this text is surrounded by literal asterisks\*</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>*this text is surrounded by literal asterisks*</p><hr /><p><a></a></p></section><section><h3>行内代码<a href="#行内代码"><span>#</span></a></h3><p>HTML 标签：<code>&lt;code&gt;</code></p><p>用<strong>反引号 (`)</strong> 包裹。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Use the `printf()` function.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>Use the <code>printf()</code> function.</p><hr /><p>若行内代码中需要包含反引号字符，可使用<strong>多重反引号</strong>作为定界符：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>``There is a literal backtick (`) here.``</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><code>There is a literal backtick (`) here.</code></p><hr /><p>行内代码两侧的定界符允许包含空格（开头一个、结尾一个），方便在代码起始或结尾放置反引号字符：</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>A single backtick in a code span: `` ` ``</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>A backtick-delimited string in a code span: `` `foo` ``</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>A single backtick in a code span: <code>`</code></p><p>A backtick-delimited string in a code span: <code>`foo`</code></p><hr /><p><a></a></p></section><section><h3>图片<a href="#图片"><span>#</span></a></h3><p>HTML 标签：<code>&lt;img /&gt;</code></p><p>Markdown 的图片语法与链接类似，支持行内与引用两种方式。</p><section><h4>行内图片<a href="#行内图片"><span>#</span></a></h4><p>行内图片语法：<code>![替代文本](URL "标题")</code></p><p>标题可选。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>![Alt text](/path/to/img.jpg)</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>![Alt text](/path/to/img.jpg "Optional title")</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p></p><figure><img src="https://s2.loli.net/2024/08/20/5fszgXeOxmL3Wdv.webp" alt="Alt text" /><figcaption>Alt text</figcaption></figure><p></p><p></p><figure><img src="https://s2.loli.net/2024/08/20/5fszgXeOxmL3Wdv.webp" alt="Alt text" title="Optional title" /><figcaption>Alt text</figcaption></figure><p></p><hr /><p>说明：</p><ul>
<li>一个感叹号 !；</li>
<li>后接方括号，放置图片的替代文本；</li>
<li>再接圆括号，内含图片 URL/路径，及可选的标题（引号包裹）。</li>
</ul></section><section><h4>引用式图片<a href="#引用式图片"><span>#</span></a></h4><p>引用式图片语法：<code>![替代文本][id]</code></p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>[img id]: https://s2.loli.net/2024/08/20/5fszgXeOxmL3Wdv.webp  "Optional title attribute"</span></div></div><div><div><div>2</div></div><div><span>![Alt text][img id]</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p></p><figure><img src="https://s2.loli.net/2024/08/20/5fszgXeOxmL3Wdv.webp" alt="Alt text" title="Optional title attribute" /><figcaption>Alt text</figcaption></figure><p></p><hr /><p><a></a></p></section></section><section><h3>删除线<a href="#删除线"><span>#</span></a></h3><p>HTML 标签：<code>&lt;del&gt;</code></p><p>这是扩展语法。</p><p>GFM 增加了删除线语法。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>~~Mistaken text.~~</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>Mistaken text.</p><hr /><p><a></a></p></section></section><section><h2>杂项<a href="#杂项"><span>#</span></a></h2><p><a></a></p><section><h3>自动链接<a href="#自动链接"><span>#</span></a></h3><p>Markdown 支持一种便捷写法来创建“自动链接”（URL 与邮箱地址）：只需用尖括号将其包住即可。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;http://example.com/&gt;</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>&lt;address@example.com&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><a href="http://example.com/" target="_blank">http://example.com/</a></p><p><a href="#">address@example.com</a></p><hr /><p>GFM 会自动识别标准 URL 并转换为链接。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>https://github.com/emn178/markdown</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><a href="https://github.com/emn178/markdown" target="_blank">https://github.com/emn178/markdown</a></p><hr /><p><a></a></p></section><section><h3>反斜杠转义<a href="#反斜杠转义"><span>#</span></a></h3><p>Markdown 允许使用反斜杠来转义那些本用于 Markdown 语法的特殊字符，使其按字面显示。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>\*literal asterisks\*</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>*literal asterisks*</p><hr /><p>以下字符可通过反斜杠转义以按字面量输出：</p><p>Code:</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>\   backslash</span></div></div><div><div><div>2</div></div><div><span>`   backtick</span></div></div><div><div><div>3</div></div><div><span>*   asterisk</span></div></div><div><div><div>4</div></div><div><span>_   underscore</span></div></div><div><div><div>5</div></div><div><span>{}  curly braces</span></div></div><div><div><div>6</div></div><div><span>[]  square brackets</span></div></div><div><div><div>7</div></div><div><span>()  parentheses</span></div></div><div><div><div>8</div></div><div><span>#   hash mark</span></div></div><div><div><div>9</div></div><div><span>+   plus sign</span></div></div><div><div><div>10</div></div><div><span>-   minus sign (hyphen)</span></div></div><div><div><div>11</div></div><div><span>.   dot</span></div></div><div><div><div>12</div></div><div><span>!   exclamation mark</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><a></a></p></section></section><section><h2>内联 HTML<a href="#内联-html"><span>#</span></a></h2><p>对于 Markdown 语法未覆盖的标记，直接使用原生 HTML 即可。无需特别声明从 Markdown 切换到 HTML，直接写标签就行。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>This is a regular paragraph.</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>&lt;table&gt;</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>&lt;tr&gt;</span></div></div><div><div><div>5</div></div><div><span><span>        </span></span><span>&lt;td&gt;Foo&lt;/td&gt;</span></div></div><div><div><div>6</div></div><div><span><span>    </span></span><span>&lt;/tr&gt;</span></div></div><div><div><div>7</div></div><div><span>&lt;/table&gt;</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>This is another regular paragraph.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p>This is a regular paragraph.</p><table>
    <tbody><tr>
        <td>Foo</td>
    </tr>
</tbody></table><p>This is another regular paragraph.</p><hr /><p>请注意：在<strong>块级 HTML 标签</strong>内不会处理 Markdown 语法。</p><p>与块级标签不同，在<strong>行内级标签</strong>内会处理 Markdown 语法。</p><p>代码：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>&lt;span&gt;**Work**&lt;/span&gt;</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>&lt;div&gt;</span></div></div><div><div><div>4</div></div><div><span><span>    </span></span><span>**No Work**</span></div></div><div><div><div>5</div></div><div><span>&lt;/div&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>预览：</p><hr /><p><span><strong>Work</strong></span></p><div>
  **No Work**
</div>
***</section></section>]]></content>
    </entry>
    <entry>
      <id>https://blog.cn3.top/blog/posts/video/</id>
      <title type="text">在文章中嵌入视频</title>
      <published>1970-01-01T00:00:00.000Z</published>
      <updated>1970-01-01T00:00:00.000Z</updated>
      <author><name>CC</name></author>
      <link rel="alternate" href="https://blog.cn3.top/blog/posts/video/"/>
      <summary type="text">这篇文章演示如何在博客文章中嵌入视频。</summary>
      <content type="html"><![CDATA[<p>只需从 YouTube 或其他平台复制嵌入代码，然后将其粘贴到 markdown 文件中。</p>
<div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>---</span></div></div><div><div><div>2</div></div><div><span>title</span><span>: </span><span>在文章中嵌入视频</span></div></div><div><div><div>3</div></div><div><span>published</span><span>: </span><span>2023-10-19</span></div></div><div><div><div>4</div></div><div><span>// ...</span></div></div><div><div><div>5</div></div><div><span>---</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>&lt;iframe width="100%" height="468" src="https://www.youtube.com/embed/5gIf0_xpFPI?si=N1WTorLKL0uwLsU_" title="YouTube video player" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;</span></div></div></code></pre><div><div></div><div></div></div></figure></div>
<section><h2>YouTube<a href="#youtube"><span>#</span></a></h2></section>
<section><h2>Bilibili<a href="#bilibili"><span>#</span></a></h2> </section>]]></content>
    </entry>
</feed>
