<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>https://005201.xyz/</id>
  <title type="text">Wliky&apos;Blog</title>
  <subtitle type="text">Firefly 是一款基于 Astro 框架和 Fuwari 模板开发的清新美观且现代化个人博客主题模板，专为技术爱好者和内容创作者设计。该主题融合了现代 Web 技术栈，提供了丰富的功能模块和高度可定制的界面，让您能够轻松打造出专业且美观的个人博客网站。</subtitle>
  <updated>2026-01-01T00:00:00.000Z</updated>
  <author><name>Wliky</name></author>
  <link rel="alternate" href="https://005201.xyz/"/>
  <link rel="self" href="https://005201.xyz/atom.xml"/>
  <generator uri="https://github.com/CuteLeaf/Firefly">Firefly v6.16.8</generator>
    <entry>
      <id>https://005201.xyz/posts/record/250920-danmu_api/</id>
      <title type="text">免费自建弹幕服务器danmu_api</title>
      <published>2025-09-20T00:00:00.000Z</published>
      <updated>2025-09-20T00:00:00.000Z</updated>
      <author><name>Wliky</name></author>
      <link rel="alternate" href="https://005201.xyz/posts/record/250920-danmu_api/"/>
      <summary type="text">一个人人都能部署的基于 js 的弹幕 API 服务器,附Cloudflare、Vercel等轻量部署方案。</summary>
      <content type="html"><![CDATA[<section><h1>什么是danmu_api<a href="#什么是danmu_api"><span>#</span></a></h1><a href="https://github.com/huangxd-/danmu_api" target="_blank"><div><div><div><div></div><div>huangxd-</div></div><div>/</div><div>danmu_api</div></div><div></div></div><div>一个人人都能部署的基于 js 的弹幕 API 服务器，支持爱优腾芒哔咪人韩巴狐乐西埋帆红弹幕直接获取，兼容弹弹play的搜索、详情查询和弹幕获取接口规范，并提供日志记录，支持vercel/netlify/edgeone/cloudflare/docker/hf等部署方式，不用提前下载弹幕，没有nas或小鸡也能一键部署。</div><div><div>—</div><div>—</div><div>AGPL-3.0</div><span>JavaScript</span></div></a><p>一个人人都能部署的基于 js 的弹幕 API 服务器，支持爱优腾芒哔人韩巴弹幕直接获取，不需要事先下载弹幕文件。
主要特性包括：</p><ul>
<li>与弹弹play兼容，支持它的搜索、详情查询和弹幕获取接口规范。</li>
<li>支持日志记录，通过日志排查。</li>
<li>多种部署方式：本地、Docker、Vercel、Cloudflare、EdgeOne、Claw 等。</li>
<li>环境变量可配置，支持一些选项来切换行为，如 Bilicookie、token选择兜底三方服务器等。</li>
</ul><section><h2>Vercle部署(推荐)<a href="#vercle部署推荐"><span>#</span></a></h2><p>fork仓库上述作者项目，不通过官方提供的一键部署，否则无法自动拉取更新。
在Vercel使用Github账号登录，新建项目选择fork的项目，默认设置，点击部署即可。</p><p>部署后，在 Vercel 仪表板转到项目设置</p><section><h3>设置环境变量<a href="#设置环境变量"><span>#</span></a></h3><p>根据项目可在<code>Environment Variables</code>部分添加相关环境变量。
保存更改并重新部署。
现以提供Ui,可配置项目Id以Token,在UI界面操作配置环境变量即可。</p></section><section><h3>设置域名<a href="#设置域名"><span>#</span></a></h3><p>默认的Vercel域名即使你选择了香港也是默认被墙或减速的状态，建议最好自定义域名。</p></section><section><h3>设置地区<a href="#设置地区"><span>#</span></a></h3><p>且默认会部署在美国，可手动切换到香港地区。</p><p>上述修改都需要重新部署后才生效。</p></section><section><h3>请求方式：<a href="#请求方式"><span>#</span></a></h3><p><code>https://{your_domain}.vercel.app/87654321/api/v2/search/anime?keyword=沉默的荣耀</code><br />
注意：TOKEN为默认87654321的情况下，可不带{TOKEN}请求，<strong>直接使用域名即可获取</strong>。<br />
<code>https://{your_domain}.vercel.app/api/v2/search/anime?keyword=沉默的荣耀</code></p></section><section><h3>使用方式<a href="#使用方式"><span>#</span></a></h3><p><code>https://your_domain/token</code></p></section></section></section>]]></content>
    </entry>
    <entry>
      <id>https://005201.xyz/posts/record/260101-jetbrains/</id>
      <title type="text">JetBrains快速激活</title>
      <published>2026-01-01T00:00:00.000Z</published>
      <updated>2026-01-01T00:00:00.000Z</updated>
      <author><name>Wliky</name></author>
      <link rel="alternate" href="https://005201.xyz/posts/record/260101-jetbrains/"/>
      <summary type="text">JetBrains 激活工具使用指南。</summary>
      <content type="html"><![CDATA[<section><h1>CodeKey Run - JetBrains 激活工具使用指南<a href="#codekey-run---jetbrains-激活工具使用指南"><span>#</span></a></h1><section><h2>激活工具网址<a href="#激活工具网址"><span>#</span></a></h2><p><code>https://ckey.run/</code></p><ul>
<li>CodeKey Run 是一个跨平台的 JetBrains IDE 激活工具</li>
<li>支持 Windows、Linux 和 macOS 系统</li>
<li>可自动激活 JetBrains 系列软件</li>
</ul></section></section>
<section><h1>激活方式<a href="#激活方式"><span>#</span></a></h1><section><h2>Windows 激活方式<a href="#windows-激活方式"><span>#</span></a></h2><ul>
<li>按下 Win + S 键，选择 Windows PowerShell (<em>管理员</em>)</li>
<li>复制命令到 PowerShell 中执行：<code>irm ckey.run | iex</code></li>
</ul></section><section><h2>Linux 激活方式<a href="#linux-激活方式"><span>#</span></a></h2><ul>
<li><code>wget --no-check-certificate ckey.run -O ckey.run &amp;&amp; bash ckey.run</code></li>
</ul></section><section><h2>MacOS 激活方式<a href="#macos-激活方式"><span>#</span></a></h2><ul>
<li><code>curl -L -o ckey.run ckey.run &amp;&amp; bash ckey.run</code></li>
</ul></section></section>
<section><h1>注意事项<a href="#注意事项"><span>#</span></a></h1><ul>
<li>建议直接复制命令，避免手动输入错误</li>
<li>激活过程需要网络连接</li>
<li>工具会自动识别系统已安装的 JetBrains 产品</li>
</ul><section><h2>MacOS特殊说明<a href="#macos特殊说明"><span>#</span></a></h2><ul>
<li>macOS 默认未安装 wget，建议使用 curl 命令</li>
<li>如果之前使用过其他激活工具导致激活失败，需要彻底清理</li>
<li>删除 JetBrains 相关应用的缓存文件</li>
</ul></section><section><h2>自定义激活<a href="#自定义激活"><span>#</span></a></h2><ul>
<li>如需自定义激活信息，请访问：ckey.run</li>
<li>验证激活,激活成功后，打开任意 JetBrains IDE</li>
<li>点击菜单栏 Help → Register</li>
</ul></section></section>
<section><h1>免责声明<a href="#免责声明"><span>#</span></a></h1><p>本工具仅供学习和测试使用，请支持正版软件。长期使用请购买官方许可证。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://005201.xyz/posts/record/251118-cloudflare-shutdown/</id>
      <title type="text">Cloudflare全球宕机</title>
      <published>2025-11-18T00:00:00.000Z</published>
      <updated>2025-11-18T00:00:00.000Z</updated>
      <author><name>Wliky</name></author>
      <link rel="alternate" href="https://005201.xyz/posts/record/251118-cloudflare-shutdown/"/>
      <summary type="text">2025.11.18 Cloudflare全球宕机，见证历史了。</summary>
      <content type="html"><![CDATA[<section><h1>Cloudflare全球节点宕机<a href="#cloudflare全球节点宕机"><span>#</span></a></h1><section><h3>事故概况<a href="#事故概况"><span>#</span></a></h3><p>今天（2025 年11 月18 日）全球网络基础设施提供商 Cloudflare, Inc. 出现重大服务故障，导致大量依赖其内容分发网络（CDN）、安全服务和边缘基础设施的网站与平台访问受阻。</p></section><section><h3>故障类型<a href="#故障类型"><span>#</span></a></h3><ul>
<li>
<p>出现 “500 Internal Server Error” 之类服务器错误提示。</p>
</li>
<li>
<p>API/控制面板访问受限：Cloudflare 的管理界面、客户仪表板也报告问题。</p>
</li>
<li>
<p>故障持续时间尚未完全确认，但报告显示“服务开始恢复，但仍有异常”。</p>
</li>
</ul></section><section><h3>Cloudflare 宕机实时时间线<a href="#cloudflare-宕机实时时间线"><span>#</span></a></h3><ul>
<li>19&lt;30&gt; 左右出现部分网页无法访问情况</li>
<li>20&lt;13&gt; 部分已恢复</li>
<li>20&lt;23&gt; 再次爆炸</li>
<li>20&lt;51&gt; 部分已恢复</li>
<li>20&lt;55&gt; 再次爆炸</li>
<li>20&lt;57&gt; 部分已恢复</li>
<li>20&lt;59&gt; 再次爆炸</li>
<li>21&lt;04&gt; CF状态页面更新：在伦敦禁用了 WARP 访问</li>
<li>21&lt;09&gt; CF状态页面更新：我们已经确认了该问题，正在实施修复</li>
<li>21&lt;13&gt; CF状态页面更新：Cloudflare Access 和 WARP 已经恢复</li>
<li>21&lt;30&gt; 持续了两个小时绝大部分依然没有恢复</li>
<li>21&lt;35&gt; CF状态页面更新： 为使用应用服务（Application Services）的客户恢复服务</li>
<li>21&lt;58&gt; CF状态页面更新： 为使用应用服务（Application Services）的客户恢复服务</li>
<li>22&lt;03&gt; X 网页版恢复</li>
<li>22&lt;12&gt; X App恢复</li>
<li>22&lt;22&gt; CF状态页面更新： 我们正在继续努力修复此问题</li>
<li>22&lt;34&gt; CF状态页面更新： 我们已经部署了一项变更，已恢复仪表板服务。我们仍在努力解决对整体应用服务的影响。</li>
<li>22&lt;42&gt; CF状态页面更新：修复措施已实施，我们认为此次事件现已得到解决。我们将继续监控错误，以确保所有服务恢复正常。</li>
</ul></section><section><h3>文章引用<a href="#文章引用"><span>#</span></a></h3><ul>
<li><a href="https://uuzi.net/cloudflare-outage-2025" target="_blank">https://uuzi.net/cloudflare-outage-2025</a></li>
<li><a href="https://zhuanlan.zhihu.com/p/1974216705191477930" target="_blank">https://zhuanlan.zhihu.com/p/1974216705191477930</a></li>
</ul></section></section>]]></content>
    </entry>
    <entry>
      <id>https://005201.xyz/posts/record/250520-linux-order/</id>
      <title type="text">Linux 常用命令</title>
      <published>2025-05-20T00:00:00.000Z</published>
      <updated>2025-05-20T00:00:00.000Z</updated>
      <author><name>Wliky</name></author>
      <link rel="alternate" href="https://005201.xyz/posts/record/250520-linux-order/"/>
      <summary type="text">Linux 命令是操作 Linux 系统的核心工具，本文按功能分类整理常用命令包含关键示例，适合新手入门与老手速查。</summary>
      <content type="html"><![CDATA[<section><h2>一、基础操作命令<a href="#一基础操作命令"><span>#</span></a></h2><section><h3>1. <code>ls</code> - 列出目录 / 文件信息<a href="#1-ls---列出目录--文件信息"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：查看目录下文件列表，支持多格式显示。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>ls</code>：显示当前目录非隐藏文件；</p>
</li>
<li>
<p><code>ls -l</code>（缩写<code>ll</code>）：长格式显示（权限、大小、修改时间等）；</p>
</li>
<li>
<p><code>ls -a</code>：显示所有文件（含隐藏文件如<code>.bashrc</code>）；</p>
</li>
<li>
<p><code>ls -lh</code>：人性化单位（K/M/G）显示文件大小。</p>
</li>
</ul>
</li>
<li>
<p><strong>注意</strong>：查看指定目录需加路径，如 <code>ls /home</code>。</p>
</li>
</ul></section><section><h3>2. <code>cd</code> - 切换工作目录<a href="#2-cd---切换工作目录"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：变更当前终端所在目录，日常操作高频命令。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>cd /home/user</code>：绝对路径切换至目标目录；</p>
</li>
<li>
<p><code>cd ../</code>：返回上一级目录；</p>
</li>
<li>
<p><code>cd ~</code>：快速进入当前用户主目录；</p>
</li>
<li>
<p><code>cd -</code>：切换至上一次所在目录。</p>
</li>
</ul>
</li>
<li>
<p><strong>注意</strong>：路径分绝对路径（/ 开头）与相对路径（如<code>cd docs</code>）。</p>
</li>
</ul></section><section><h3>3. <code>pwd</code> - 显示当前路径<a href="#3-pwd---显示当前路径"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：输出当前终端的完整绝对路径，避免 “迷路”。</p>
</li>
<li>
<p><strong>示例</strong>：<code>pwd</code> → 输出如<code>/home/user/documents</code>。</p>
</li>
</ul></section><section><h3>4. <code>clear</code> - 清空终端<a href="#4-clear---清空终端"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：清除终端已显示内容，光标回到顶部。</p>
</li>
<li>
<p><strong>示例</strong>：<code>clear</code> 或快捷键 <code>Ctrl+L</code>。</p>
</li>
</ul></section><section><h3>5. <code>whoami</code> - 查看当前用户<a href="#5-whoami---查看当前用户"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：输出当前登录用户名，用于确认身份。</p>
</li>
<li>
<p><strong>示例</strong>：<code>whoami</code> → 输出如<code>user</code>。</p>
</li>
</ul></section><section><h3>6. <code>uname</code> - 查看系统信息<a href="#6-uname---查看系统信息"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：获取内核名称、版本、架构等信息。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>uname</code>：仅显示内核名称（如<code>Linux</code>）；</p>
</li>
<li>
<p><code>uname -r</code>：显示内核版本（如<code>5.15.0-78-generic</code>）；</p>
</li>
<li>
<p><code>uname -a</code>：显示完整系统信息。</p>
</li>
</ul>
</li>
<li>
<p><strong>注意</strong>：查看发行版版本用 <code>cat /etc/os-release</code>。</p>
</li>
</ul><hr /></section></section>
<section><h2>二、文件与目录操作命令<a href="#二文件与目录操作命令"><span>#</span></a></h2><section><h3>1. 创建操作<a href="#1-创建操作"><span>#</span></a></h3><section><h4>（1）<code>touch</code> - 创建空文件 / 更新时间<a href="#1touch---创建空文件--更新时间"><span>#</span></a></h4><ul>
<li>
<p><strong>功能</strong>：创建空文件或更新已有文件的时间戳。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>touch test.txt</code>：创建空文件；</p>
</li>
<li>
<p><code>touch file1.txt file2.txt</code>：批量创建；</p>
</li>
<li>
<p><code>touch -d "2024-01-01" old.txt</code>：修改文件时间。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（2）<code>mkdir</code> - 创建目录<a href="#2mkdir---创建目录"><span>#</span></a></h4><ul>
<li>
<p><strong>功能</strong>：创建单个或多级目录。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>mkdir docs</code>：创建单个目录；</p>
</li>
<li>
<p><code>mkdir -p docs/linux/commands</code>：递归创建多级目录；</p>
</li>
<li>
<p><code>mkdir -m 755 public</code>：创建目录并指定权限<code>755</code>。</p>
</li>
</ul>
</li>
</ul></section></section><section><h3>2. <code>cp</code> - 复制文件 / 目录<a href="#2-cp---复制文件--目录"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：复制文件或目录到目标路径。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>cp test.txt /backup</code>：复制文件至目标目录；</p>
</li>
<li>
<p><code>cp -r docs/ /backup/docs</code>：递归复制目录（必须加<code>-r</code>）；</p>
</li>
<li>
<p><code>cp -v file1.txt file2.txt</code>：显示复制过程。</p>
</li>
</ul>
</li>
</ul></section><section><h3>3. <code>mv</code> - 移动 / 重命名<a href="#3-mv---移动--重命名"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：移动文件 / 目录或重命名。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>mv test.txt /home/user</code>：移动文件；</p>
</li>
<li>
<p><code>mv old.txt new.txt</code>：重命名文件；</p>
</li>
<li>
<p><code>mv -f docs/ /backup</code>：强制移动目录（覆盖不提示）。</p>
</li>
</ul>
</li>
</ul></section><section><h3>4. <code>rm</code> - 删除文件 / 目录<a href="#4-rm---删除文件--目录"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：删除文件或目录，操作需谨慎！</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>rm test.txt</code>：删除文件（默认提示确认）；</p>
</li>
<li>
<p><code>rm -f test.txt</code>：强制删除（无提示）；</p>
</li>
<li>
<p><code>rm -r docs/</code>：递归删除目录；</p>
</li>
<li>
<p><code>rm -rf temp/</code>：强制递归删除（高危！避免误删根目录）。</p>
</li>
</ul>
</li>
</ul></section><section><h3>5. 查看与编辑<a href="#5-查看与编辑"><span>#</span></a></h3><section><h4>（1）<code>cat</code> - 查看小文件<a href="#1cat---查看小文件"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>cat test.txt</code>：显示文件全部内容；</p>
</li>
<li>
<p><code>cat -n test.txt</code>：显示行号；</p>
</li>
<li>
<p><code>cat file1.txt file2.txt &gt; all.txt</code>：合并文件内容。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（2）<code>more</code>/<code>less</code> - 分页查看大文件<a href="#2moreless---分页查看大文件"><span>#</span></a></h4><ul>
<li>
<p><code>more log.txt</code>：按页显示，空格键翻页，<code>q</code>退出；</p>
</li>
<li>
<p><code>less log.txt</code>：增强版，支持上下滚动、搜索（输入<code>/关键词</code>）、<code>q</code>退出。</p>
</li>
</ul></section><section><h4>（3）<code>head</code>/<code>tail</code> - 查看首尾内容<a href="#3headtail---查看首尾内容"><span>#</span></a></h4><ul>
<li>
<p><code>head -5 log.txt</code>：显示前 5 行；</p>
</li>
<li>
<p><code>tail -10 log.txt</code>：显示后 10 行；</p>
</li>
<li>
<p><code>tail -f log.txt</code>：实时监控文件新增内容（<code>Ctrl+C</code>停止）。</p>
</li>
</ul></section><section><h4>（4）<code>nano</code>/<code>vim</code> - 编辑文件<a href="#4nanovim---编辑文件"><span>#</span></a></h4><ul>
<li>
<p><code>nano test.txt</code>：简单编辑器，<code>Ctrl+O</code>保存，<code>Ctrl+X</code>退出；</p>
</li>
<li>
<p><code>vim test.txt</code>：专业编辑器，<code>i</code>进入编辑模式，<code>Esc</code>+<code>:wq</code>保存退出，<code>:q!</code>强制退出。</p>
</li>
</ul><hr /></section></section></section>
<section><h2>三、系统监控与管理命令<a href="#三系统监控与管理命令"><span>#</span></a></h2><section><h3>1. 资源监控<a href="#1-资源监控"><span>#</span></a></h3><section><h4>（1）<code>top</code> - 实时监控资源<a href="#1top---实时监控资源"><span>#</span></a></h4><ul>
<li>
<p><strong>功能</strong>：动态显示 CPU、内存、进程占用，每 3 秒刷新。</p>
</li>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>top</code>：启动监控，<code>q</code>退出；</p>
</li>
<li>
<p><code>top -p 1234</code>：仅监控 PID 为 1234 的进程；</p>
</li>
<li>
<p><code>top -u user</code>：仅监控用户<code>user</code>的进程。</p>
</li>
</ul>
</li>
<li>
<p><strong>关键指标</strong>：</p>
<ul>
<li>
<p>系统负载：<code>load average: 0.50, 0.30, 0.20</code>（1/5/15 分钟，值越小越好）；</p>
</li>
<li>
<p>CPU 空闲率：<code>%id</code>（越低负载越高）；</p>
</li>
<li>
<p>内存使用率：<code>Mem</code>与<code>Swap</code>（Swap 使用率高需警惕内存不足）。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（2）<code>free</code> - 查看内存<a href="#2free---查看内存"><span>#</span></a></h4><ul>
<li><strong>示例</strong>：<code>free -h</code> → 人性化显示内存（如<code>Mem: 15.5G total, 8.2G used</code>）。</li>
</ul></section><section><h4>（3）<code>df</code> - 查看磁盘空间<a href="#3df---查看磁盘空间"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：<code>df -h</code> → 显示分区占用（如<code>/dev/sda1 50G 15G 35G 30% /</code>）；</p>
</li>
<li>
<p><code>df -i</code>：查看 inode 使用（避免 inode 耗尽无法创建文件）。</p>
</li>
</ul></section><section><h4>（4）<code>du</code> - 查看目录占用<a href="#4du---查看目录占用"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>du -sh docs/</code>：显示目录总大小（如<code>2.5G</code>）；</p>
</li>
<li>
<p><code>du -h --max-depth=1 /home</code>：显示一级子目录大小。</p>
</li>
</ul>
</li>
</ul></section></section><section><h3>2. 进程管理<a href="#2-进程管理"><span>#</span></a></h3><section><h4>（1）<code>ps</code> - 查看进程<a href="#1ps---查看进程"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>ps aux</code>：显示所有进程（含 PID、CPU 使用率）；</p>
</li>
<li>
<p><code>ps aux | grep java</code>：筛选 Java 相关进程。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（2）<code>kill</code> - 终止进程<a href="#2kill---终止进程"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>kill 1234</code>：发送终止信号（优雅退出）；</p>
</li>
<li>
<p><code>kill -9 1234</code>：强制终止（进程无响应时用）；</p>
</li>
<li>
<p><code>killall java</code>：批量终止同名进程。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（3）<code>systemctl</code> - 管理服务<a href="#3systemctl---管理服务"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>（以 Nginx 为例）：</p>
<ul>
<li>
<p><code>systemctl start nginx</code>：启动服务；</p>
</li>
<li>
<p><code>systemctl stop nginx</code>：停止服务；</p>
</li>
<li>
<p><code>systemctl restart nginx</code>：重启服务；</p>
</li>
<li>
<p><code>systemctl enable nginx</code>：设置开机自启；</p>
</li>
<li>
<p><code>systemctl status nginx</code>：查看服务状态（如<code>active (running)</code>）。</p>
</li>
</ul>
</li>
</ul><hr /></section></section></section>
<section><h2>四、用户与权限管理命令<a href="#四用户与权限管理命令"><span>#</span></a></h2><section><h3>1. 用户管理<a href="#1-用户管理"><span>#</span></a></h3><section><h4>（1）<code>useradd</code> - 创建用户<a href="#1useradd---创建用户"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：<code>useradd -m -d /home/testuser -s /bin/bash testuser</code>（创建用户并指定主目录、Shell）；</p>
</li>
<li>
<p>注意：创建后需用 <code>passwd testuser</code> 设置密码。</p>
</li>
</ul></section><section><h4>（2）<code>passwd</code> - 修改密码<a href="#2passwd---修改密码"><span>#</span></a></h4><ul>
<li><strong>示例</strong>：<code>passwd testuser</code>（管理员修改用户密码）；普通用户直接输入<code>passwd</code>修改自身密码。</li>
</ul></section><section><h4>（3）<code>userdel</code> - 删除用户<a href="#3userdel---删除用户"><span>#</span></a></h4><ul>
<li><strong>示例</strong>：<code>userdel -r testuser</code>（删除用户并清理主目录）。</li>
</ul></section><section><h4>（4）<code>su</code>/<code>sudo</code> - 切换权限<a href="#4susudo---切换权限"><span>#</span></a></h4><ul>
<li>
<p><code>su - testuser</code>：切换用户并加载环境变量；</p>
</li>
<li>
<p><code>sudo ls /root</code>：普通用户临时获取管理员权限；</p>
</li>
<li>
<p><code>sudo -i</code>：进入管理员交互式 Shell。</p>
</li>
</ul></section></section><section><h3>2. 权限管理<a href="#2-权限管理"><span>#</span></a></h3><p>Linux 权限：<code>读(r=4)</code>、<code>写(w=2)</code>、<code>执行(x=1)</code>，对应所有者（u）、所属组（g）、其他用户（o）。</p><section><h4>（1）<code>chmod</code> - 修改权限<a href="#1chmod---修改权限"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p>字母法：<code>chmod u+x ``test.sh</code>（给所有者加执行权限）；</p>
</li>
<li>
<p>数字法：<code>chmod 755 ``test.sh</code>（所有者 rwx，其他 rx）、<code>chmod 644 test.txt</code>（所有者 rw，其他 r）；</p>
</li>
<li>
<p>递归修改：<code>chmod -R 755 docs/</code>。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（2）<code>chown</code> - 修改所有者 / 组<a href="#2chown---修改所有者--组"><span>#</span></a></h4><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>chown testuser test.txt</code>：修改所有者；</p>
</li>
<li>
<p><code>chown testuser:testgroup test.txt</code>：修改所有者与组；</p>
</li>
<li>
<p><code>chown -R testuser:testgroup docs/</code>：递归修改目录。</p>
</li>
</ul>
</li>
</ul></section><section><h4>（3）<code>ls -l</code> - 查看权限<a href="#3ls--l---查看权限"><span>#</span></a></h4><ul>
<li><strong>示例</strong>：<code>ls -l test.txt</code> → 输出如<code>-rw-r--r-- 1 testuser testgroup 1024 Aug 1 10:00 test.txt</code>（首字段为权限）。</li>
</ul><hr /></section></section></section>
<section><h2>五、网络操作命令<a href="#五网络操作命令"><span>#</span></a></h2><section><h3>1. <code>ip addr</code> - 查看网卡信息<a href="#1-ip-addr---查看网卡信息"><span>#</span></a></h3><ul>
<li>
<p><strong>功能</strong>：替代旧版<code>ifconfig</code>，显示 IP、MAC 地址。</p>
</li>
<li>
<p><strong>示例</strong>：<code>ip addr</code> → 查看所有网卡（如<code>inet ``192.168.1.100/24</code>）。</p>
</li>
</ul></section><section><h3>2. <code>ping</code> - 测试连通性<a href="#2-ping---测试连通性"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>ping ``baidu.com</code>：测试与百度连通（<code>Ctrl+C</code>停止）；</p>
</li>
<li>
<p><code>ping -c 4 ``baidu.com</code>：发送 4 个包后停止。</p>
</li>
</ul>
</li>
</ul></section><section><h3>3. <code>netstat</code>/<code>ss</code> - 查看网络状态<a href="#3-netstatss---查看网络状态"><span>#</span></a></h3><ul>
<li>
<p><code>netstat -tuln</code>：显示监听端口（如<code>tcp 0 0 ``0.0.0.0:80`` LISTEN</code>）；</p>
</li>
<li>
<p><code>ss -tuln</code>：新版替代命令，效率更高；</p>
</li>
<li>
<p><code>ss -an | grep :443</code>：筛选 443 端口连接。</p>
</li>
</ul></section><section><h3>4. <code>curl</code> - 发送 HTTP 请求 / 下载<a href="#4-curl---发送-http-请求--下载"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>curl ``https://baidu.com</code>：获取网页内容；</p>
</li>
<li>
<p><code>curl -I ``https://baidu.com</code>：查看响应头（如<code>HTTP/1.1 200 OK</code>）；</p>
</li>
<li>
<p><code>curl -O ``https://example.com/file.zip</code>：下载文件。</p>
</li>
</ul>
</li>
</ul></section><section><h3>5. <code>wget</code> - 下载工具<a href="#5-wget---下载工具"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>wget ``https://example.com/file.zip</code>：直接下载；</p>
</li>
<li>
<p><code>wget -c ``https://example.com/file.zip</code>：断点续传；</p>
</li>
<li>
<p><code>wget -P /download ``https://example.com/file.zip</code>：指定下载目录。</p>
</li>
</ul>
</li>
</ul></section><section><h3>6. <code>ssh</code> - 远程登录<a href="#6-ssh---远程登录"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>ssh user@``192.168.1.100</code>：默认 22 端口登录；</p>
</li>
<li>
<p><code>ssh -p 2222 user@``192.168.1.100</code>：指定端口登录；</p>
</li>
<li>
<p><code>ssh user@server "ls /home"</code>：远程执行单条命令。</p>
</li>
</ul>
</li>
</ul><hr /></section></section>
<section><h2>六、压缩与解压命令<a href="#六压缩与解压命令"><span>#</span></a></h2>

<table><thead><tr><th>格式</th><th>解压命令</th><th>压缩命令</th></tr></thead><tbody><tr><td><code>.tar</code></td><td><code>tar xf file.tar</code></td><td><code>tar cf file.tar dir/</code></td></tr><tr><td><code>.tar.gz</code></td><td><code>tar xzf file.tar.gz</code></td><td><code>tar czf file.tar.gz dir/</code></td></tr><tr><td><code>.tar.bz2</code></td><td><code>tar xjf file.tar.bz2</code></td><td><code>tar cjf file.tar.bz2 dir/</code></td></tr><tr><td><code>.zip</code></td><td><code>unzip file.zip [-d 目录]</code></td><td><code>zip -r file.zip dir/</code></td></tr><tr><td><code>.rar</code></td><td><code>unrar x file.rar</code></td><td><code>rar a file.rar dir/</code></td></tr></tbody></table><ul>
<li><strong>说明</strong>：<code>tar</code>命令中，<code>x</code>= 解压、<code>c</code>= 压缩、<code>f</code>= 指定文件，<code>z</code>/<code>j</code>对应压缩格式；<code>.zip</code>/<code>.rar</code>需先安装<code>unzip</code>/<code>rar</code>工具。</li>
</ul><hr /></section>
<section><h2>七、搜索命令<a href="#七搜索命令"><span>#</span></a></h2><section><h3>1. <code>find</code> - 查找文件 / 目录<a href="#1-find---查找文件--目录"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>find /home -name "test.txt"</code>：按名称精确查找；</p>
</li>
<li>
<p><code>find /home -iname "*.txt"</code>：模糊查找（忽略大小写）；</p>
</li>
<li>
<p><code>find / -size +100M</code>：查找大于 100M 的文件；</p>
</li>
<li>
<p><code>find /tmp -name "*.tmp" -delete</code>：查找并删除临时文件（谨慎！）。</p>
</li>
</ul>
</li>
</ul></section><section><h3>2. <code>grep</code> - 搜索文本内容<a href="#2-grep---搜索文本内容"><span>#</span></a></h3><ul>
<li>
<p><strong>示例</strong>：</p>
<ul>
<li>
<p><code>grep "error" log.txt</code>：在文件中搜索 “error”；</p>
</li>
<li>
<p><code>grep -i "Error" log.txt</code>：忽略大小写；</p>
</li>
<li>
<p><code>grep -n "warning" log.txt</code>：显示匹配行号；</p>
</li>
<li>
<p><code>grep -r "test" /home/docs</code>：递归搜索目录下所有文件。</p>
</li>
</ul>
</li>
</ul></section></section>]]></content>
    </entry>
    <entry>
      <id>https://005201.xyz/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://005201.xyz/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>
</feed>
