<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://blog.17lai.site</id>
    <title>夜法之书 • Posts by &#34;tools&#34; category</title>
    <link href="https://blog.17lai.site" />
    <updated>2025-09-04T06:09:12.000Z</updated>
    <category term="github" />
    <category term="jekyll" />
    <category term="blog" />
    <category term="embeded" />
    <category term="hisilicon" />
    <category term="linux" />
    <category term="driver" />
    <category term="3798m" />
    <category term="mpp" />
    <category term="unf" />
    <category term="kernel" />
    <category term="gitlab" />
    <category term="git" />
    <category term="crack" />
    <category term="hardlink" />
    <category term="bt" />
    <category term="pt" />
    <category term="qnap" />
    <category term="硬盘" />
    <category term="nas" />
    <category term="markdown" />
    <category term="picgo" />
    <category term="wiz" />
    <category term="joplin" />
    <category term="typora" />
    <category term="3G" />
    <category term="4G" />
    <category term="3531a" />
    <category term="移植" />
    <category term="嵌入式" />
    <category term="宝塔" />
    <category term="vps" />
    <category term="建站" />
    <category term="nginx" />
    <category term="apache" />
    <category term="mysql" />
    <category term="docker" />
    <category term="lamp" />
    <category term="php" />
    <category term="tomcat" />
    <category term="registry" />
    <category term="教程" />
    <category term="email" />
    <category term="https" />
    <category term="ssl" />
    <category term="debian" />
    <category term="laptop" />
    <category term="ed2k" />
    <category term="ati" />
    <category term="qbittorrent" />
    <category term="ssd" />
    <category term="hdd" />
    <category term="transmission" />
    <category term="pdca" />
    <category term="5w2h" />
    <category term="smart" />
    <category term="swot" />
    <category term="grow" />
    <category term="okr" />
    <category term="wbs" />
    <category term="启动" />
    <category term="emby" />
    <category term="sonarr" />
    <category term="jeckett" />
    <category term="portainer" />
    <category term="tls" />
    <category term="隐私" />
    <category term="安全" />
    <category term="优化" />
    <category term="gitbook" />
    <category term="mariadb" />
    <category term="note" />
    <category term="mermaid" />
    <category term="webdav" />
    <category term="hexo" />
    <category term="matery" />
    <category term="npm" />
    <category term="web" />
    <category term="http" />
    <category term="css" />
    <category term="js" />
    <category term="ai" />
    <category term="face" />
    <category term="3a" />
    <category term="ae" />
    <category term="image" />
    <category term="ccs" />
    <category term="vim" />
    <category term="ide" />
    <category term="music" />
    <category term="韩红" />
    <category term="thinkpad" />
    <category term="sound" />
    <category term="speaker" />
    <category term="刮削" />
    <category term="musicbrainz" />
    <category term="mp3tag" />
    <category term="tmm" />
    <category term="字幕" />
    <category term="plex" />
    <category term="cmake" />
    <category term="develop" />
    <category term="ipv6" />
    <category term="traefik" />
    <category term="proxy" />
    <category term="swarm" />
    <category term="ubuntu" />
    <category term="vscode" />
    <category term="插件" />
    <category term="编码" />
    <category term="plantuml" />
    <category term="mathjax" />
    <category term="ci/cd" />
    <category term="earthly" />
    <category term="mstream" />
    <category term="selfhost" />
    <category term="中岛美嘉" />
    <category term="node" />
    <category term="jenkins" />
    <category term="shell" />
    <category term="tools" />
    <category term="winrar" />
    <category term="emoji" />
    <category term="isp" />
    <category term="awb" />
    <category term="mywork" />
    <category term="cdn" />
    <category term="seo" />
    <category term="fitness" />
    <category term="健身" />
    <category term="运动" />
    <category term="devops" />
    <category term="k8s" />
    <category term="harbor" />
    <category term="pmbok" />
    <category term="管理" />
    <category term="ipd" />
    <category term="绩效" />
    <category term="drowio" />
    <category term="man" />
    <category term="框架" />
    <category term="图解" />
    <category term="doxygen" />
    <category term="bash" />
    <category term="中医" />
    <category term="西医" />
    <category term="文化历史" />
    <category term="竞品分析" />
    <category term="rss" />
    <category term="rsshub" />
    <category term="社会观察" />
    <category term="知识" />
    <category term="智慧" />
    <category term="os" />
    <category term="自制" />
    <category term="编译器" />
    <category term="C" />
    <category term="compiler" />
    <category term="故事" />
    <category term="nodeppt" />
    <category term="echarts" />
    <category term="写作" />
    <category term="vercel" />
    <category term="potplayer" />
    <category term="action" />
    <category term="workflow" />
    <category term="概率" />
    <category term="普朗克" />
    <category term="投资" />
    <category term="理财" />
    <category term="金融" />
    <category term="yandex" />
    <category term="source" />
    <category term="hack" />
    <category term="download" />
    <category term="chatgpt" />
    <category term="openai" />
    <category term="calibre" />
    <category term="douban" />
    <category term="book" />
    <category term="不可能三角" />
    <category term="waline" />
    <category term="IPD" />
    <category term="MM方法论" />
    <category term="端到端" />
    <category term="信用卡" />
    <category term="定制服务器" />
    <category term="search" />
    <category term="开源" />
    <category term="读书评鉴" />
    <category term="穿越必备" />
    <category term="易学" />
    <category term="高考" />
    <category term="专业" />
    <category term="google" />
    <category term="profile" />
    <category term="tampermonkey" />
    <category term="zhihu" />
    <category term="csdn" />
    <category term="juejin" />
    <category term="webhook" />
    <category term="密码" />
    <category term="bitwarden" />
    <category term="office" />
    <category term="kms" />
    <category term="破解" />
    <category term="健康" />
    <category term="恢复" />
    <category term="养生" />
    <category term="刀郎" />
    <category term="study" />
    <category term="english" />
    <category term="雅思" />
    <category term="umami" />
    <category term="windows" />
    <category term="垃圾清理" />
    <category term="速度优化" />
    <category term="阳历" />
    <category term="阴历" />
    <category term="阴阳和历" />
    <category term="天干" />
    <category term="地支" />
    <category term="热水器" />
    <category term="维护" />
    <category term="汽车" />
    <category term="测速" />
    <category term="nat" />
    <category term="光猫" />
    <category term="ipfs" />
    <category term="zlibrary" />
    <category term="sql" />
    <category term="postgresql" />
    <category term="sqlite" />
    <category term="dns" />
    <category term="smartdns" />
    <category term="dnsmasq" />
    <category term="物理" />
    <category term="广义相对论" />
    <category term="科学" />
    <category term="侠义相对论" />
    <category term="高薪" />
    <category term="传媒" />
    <category term="llm" />
    <category term="api" />
    <category term="免费" />
    <category term="ollama" />
    <category term="人性" />
    <category term="人格分析" />
    <category term="驱动" />
    <category term="sensor" />
    <entry>
        <id>https://blog.17lai.site/posts/43241a29/</id>
        <title>IPFS从零开始快速入门教程</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/43241a29/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;IPFS是新时代的去中心化的BT替代者，它可以把资源发布者，存储者区分开！在很多方面，安全性，匿名性等都优于Bittorrent下载。虽然它还很稚嫩，但已经展现出来很多优越性，它已经展现出来新时代共享资源之王的潜质，还不赶快来学习怎么使用它？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447.webp&#34; alt=&#34;IPFS&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;
&lt;p&gt;其实早在 2020 年（即秒传时代的开端）就已经有&lt;a href=&#34;https://gmgard.com/gm108719&#34;&gt;贴子&lt;/a&gt;推荐 IPFS 作为分享方案了，属于分享账号大封禁之后众多分享技术路线探索中的一支。只是限于当时的 IPFS 仍然处于早期阶段，各种平台等配套设施并不完善，大部分人对其理解也是变种的 BT，没有成功普及，随后和其他路线一样，在秒传的兴起中变得无人问津。&lt;/p&gt;
&lt;p&gt;随着 2023 年末期百度开始逐步修复秒传，寻找新路线又重新开始被重视。期间从分卷压缩、专有加密到文件隐写等方法不一而足。这些探索都是值得肯定的，但是另一方面，对于网盘分享领域的诸多问题其实一直没有得到解答，对于炸链现象的解释显得笼统且不精确，由此带来的防炸方案也是五花八门，谁也不能说服谁。&lt;/p&gt;
&lt;p&gt;比如，关于【为什么会炸链】这个问题，就有在线解压说、文件名敏感说、账号监控说、玄学说、严格审查说、举报说等；对应的防炸方法也就是分卷压缩/多层压缩、改后缀名、换 IP、以及使用 VeraCrypt 等专业加密程序方案、伪装MP4/图片/二进制转码等文件隐写方案。&lt;/p&gt;
&lt;p&gt;对上述问题最终取得突破的是文件隐写方案，但并不是因为证明了隐写方案才是最有效的方案，而是以隐写文件为基础，通过&lt;a href=&#34;https://bafybeiadpfp7wu6qwmyighdel3qw2eqqqacrmyuxfdwc5u4vwmhiw4mqce.ipfs.dweb.link/&#34;&gt;控制变量试验&lt;/a&gt;证明了在百度网盘上的举报是【&lt;a href=&#34;https://hxcy.top/541697.html&#34;&gt;无解&lt;/a&gt;】的，进而整体否定了通过改进打包技术来防炸这条路线。（对此问题感兴趣可以点击链接中的文章详细查看）&lt;/p&gt;
&lt;p&gt;在这样的情况下，IPFS 方案又逐渐成为了可选项了，尽管当前的 IPFS 仍不能说拥有足够充分的配套设施，但是相比于 2020 年，已经有了一些进步和积累，比如本文第 4 节会谈及的文件托管平台，使得 IPFS 在保留 BT 优点(无法举报)、解决 BT 的某些缺点(低安全性)的同时，在方便性上部分甚至绝对超过了以百度为代表的传统中心化网盘。&lt;/p&gt;
&lt;p&gt;本文则是 IPFS 快速上手教程，旨在快速入门 IPFS 的基本操作。详细介绍了 IPFS（星际文件系统）的使用方法、优缺点及其在资源分享中的应用场景。文章首先讲解了 IPFS 的基本操作，包括文件的上传、固定、分享和下载。随后，介绍了 IPFS 本地文件管理和使用托管平台的方法。最后，文章对比了 IPFS 与传统网盘分享方案，提出了分场景使用不同级别分享方案的建议， 分析了 IPFS 作为最终手段，在应对恶意举报问题上的优势。&lt;/p&gt;
&lt;h3 id=&#34;关于-IPFS-的几个要点：&#34;&gt;关于 IPFS 的几个要点：&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;IPFS 上传和下载都&lt;strong&gt;不需要公网 IP，也不需要 VPS&lt;/strong&gt;，但是注意如果挂了梯子【&lt;strong&gt;不要开启 TUN 模式&lt;/strong&gt;，否则你的流量很快就没了】。&lt;/li&gt;
&lt;li&gt;IPFS 发布文件需要先&lt;strong&gt;固定&lt;/strong&gt;（类比 BT 的做种），然后可以通过浏览器整合下载。&lt;/li&gt;
&lt;li&gt;IPFS 除了自己固定（做种），也可以选择&lt;strong&gt;托管平台&lt;/strong&gt;托管，代为做种。&lt;/li&gt;
&lt;li&gt;IPFS 发布的文件大部分都可以&lt;strong&gt;直连下载&lt;/strong&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;先在这里下载 IPFS 客户端并安装：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.ipfs.tech/install/ipfs-desktop/#windows&#34;&gt;https://docs.ipfs.tech/install/ipfs-desktop/#windows&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;以下是操作流程的详细说明。&lt;/p&gt;
&lt;p&gt;如果上面的链接打不开，或者找不到，可以从下面的备用镜像链接下载（）&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;IPFS 直链：&lt;a href=&#34;https://bafybeifh2jdor3r26x4adskx2rlz33ada64mducx2iq6oa3iqh5ir42zby.eth.sucks?filename=IPFS-Desktop-Setup-0.38.0.exe&#34;&gt;https://bafybeifh2jdor3r26x4adskx2rlz33ada64mducx2iq6oa3iqh5ir42zby.eth.sucks?filename=IPFS-Desktop-Setup-0.38.0.exe&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;以下是操作流程的详细说明。&lt;/p&gt;
&lt;h2 id=&#34;IPFS-安装&#34;&gt;IPFS 安装&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/ipfs/ipfs&#34;&gt;https://github.com/ipfs/ipfs&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;WIndows-平台&#34;&gt;WIndows 平台&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/ipfs/ipfs-desktop&#34;&gt;https://github.com/ipfs/ipfs-desktop&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;Docker&#34;&gt;Docker&lt;/h3&gt;
&lt;p&gt;是的，IPFS 官方提供了 &lt;strong&gt;Docker 镜像&lt;/strong&gt;，支持在容器中快速部署 IPFS 节点或客户端。以下是详细的使用指南：&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&#34;📦-一、官方-Docker-镜像&#34;&gt;&lt;strong&gt;📦 一、官方 Docker 镜像&lt;/strong&gt;&lt;/h4&gt;
&lt;h5 id=&#34;1-IPFS-核心节点镜像&#34;&gt;&lt;strong&gt;1. IPFS 核心节点镜像&lt;/strong&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;镜像地址&lt;/strong&gt;：&lt;a href=&#34;https://hub.docker.com/r/ipfs/kubo&#34;&gt;&lt;code&gt;ipfs/kubo&lt;/code&gt;&lt;/a&gt;（Kubo 是 IPFS 的 Go 语言实现，原名 go-ipfs）&lt;/li&gt;
&lt;/ul&gt;
&lt;h5 id=&#34;2-主要功能&#34;&gt;&lt;strong&gt;2. 主要功能&lt;/strong&gt;&lt;/h5&gt;
&lt;p&gt;✅ 运行完整的 IPFS 节点&lt;br&gt;
✅ 支持文件上传/下载、网关服务、节点管理&lt;br&gt;
✅ 可通过 CLI 或 HTTP API 操作（如访问 CID）&lt;/p&gt;
&lt;hr&gt;
&lt;h4 id=&#34;⚙️-二、Docker-部署步骤&#34;&gt;&lt;strong&gt;⚙️ 二、Docker 部署步骤&lt;/strong&gt;&lt;/h4&gt;
&lt;h5 id=&#34;1-拉取镜像&#34;&gt;&lt;strong&gt;1. 拉取镜像&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull ipfs&amp;#x2F;kubo:latest&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h5 id=&#34;2-运行-IPFS-节点&#34;&gt;&lt;strong&gt;2. 运行 IPFS 节点&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;# 创建持久化数据卷（避免容器重启数据丢失）
docker volume create ipfs_data

# 启动容器
docker run -d \
--name ipfs-node \
-v ipfs_data:&amp;#x2F;data&amp;#x2F;ipfs \
-p 4001:4001 \# P2P 节点通信
-p 5001:5001 \# API 端口（管理节点）
-p 8080:8080 \# 网关端口（访问文件）
ipfs&amp;#x2F;kubo:latest&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h5 id=&#34;3-操作节点&#34;&gt;&lt;strong&gt;3. 操作节点&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;# 进入容器 CLI
docker exec -it ipfs-node sh

# 下载 CID 文件（示例）
ipfs get QmacdD9VAm1kb5tsT1NngdStyggcBnPNMdxZCHKrNkDTH9

# 文件会保存到容器的 &amp;#x2F;data&amp;#x2F;ipfs 目录（映射到宿主机卷）&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;hr&gt;
&lt;h4 id=&#34;🌐-三、通过-HTTP-API-下载文件（免-CLI）&#34;&gt;&lt;strong&gt;🌐 三、通过 HTTP API 下载文件（免 CLI）&lt;/strong&gt;&lt;/h4&gt;
&lt;p&gt;IPFS 容器提供 HTTP API，可直接从宿主机操作：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;# 下载 CID 到宿主机当前目录
curl -X POST &amp;quot;http:&amp;#x2F;&amp;#x2F;localhost:5001&amp;#x2F;api&amp;#x2F;v0&amp;#x2F;get?arg&amp;#x3D;&amp;lt;CID&amp;gt;&amp;amp;output&amp;#x3D;.&amp;quot; \
-o output_file&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;示例&lt;/strong&gt;：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;curl -X POST &amp;quot;http:&amp;#x2F;&amp;#x2F;localhost:5001&amp;#x2F;api&amp;#x2F;v0&amp;#x2F;get?arg&amp;#x3D;QmacdD9VAm1kb5tsT1NngdStyggcBnPNMdxZCHKrNkDTH9&amp;amp;output&amp;#x3D;.&amp;quot; \
-o download.zip&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;hr&gt;
&lt;h4 id=&#34;🔧-四、进阶配置&#34;&gt;&lt;strong&gt;🔧 四、进阶配置&lt;/strong&gt;&lt;/h4&gt;
&lt;h5 id=&#34;1-自定义存储路径&#34;&gt;&lt;strong&gt;1. 自定义存储路径&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker run -d \
-v &amp;#x2F;your&amp;#x2F;local&amp;#x2F;path:&amp;#x2F;data&amp;#x2F;ipfs \# 宿主机目录映射
...其他参数同前...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h5 id=&#34;2-使用-IPFS-Cluster（分布式存储）&#34;&gt;&lt;strong&gt;2. 使用 IPFS Cluster（分布式存储）&lt;/strong&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;镜像&lt;/strong&gt;：&lt;a href=&#34;https://hub.docker.com/r/ipfs/ipfs-cluster&#34;&gt;&lt;code&gt;ipfs/ipfs-cluster&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;用途&lt;/strong&gt;：管理多节点 IPFS 集群，提升文件可用性。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h4 id=&#34;📊-五、Docker-方案-vs-原生安装&#34;&gt;&lt;strong&gt;📊 五、Docker 方案 vs 原生安装&lt;/strong&gt;&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;特性&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Docker 方案&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;原生安装&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;部署速度&lt;/td&gt;
&lt;td&gt;✅ 秒级启动（镜像预配置）&lt;/td&gt;
&lt;td&gt;⚠️ 需手动安装依赖&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;隔离性&lt;/td&gt;
&lt;td&gt;✅ 容器隔离，不污染宿主机环境&lt;/td&gt;
&lt;td&gt;❌ 直接修改系统&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;持久化存储&lt;/td&gt;
&lt;td&gt;✅ 通过卷映射实现&lt;/td&gt;
&lt;td&gt;✅ 直接管理文件&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;多版本共存&lt;/td&gt;
&lt;td&gt;✅ 可同时运行不同版本 IPFS 节点&lt;/td&gt;
&lt;td&gt;❌ 困难&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;资源占用&lt;/td&gt;
&lt;td&gt;⚠️ 略高（容器开销）&lt;/td&gt;
&lt;td&gt;✅ 更低&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;h4 id=&#34;💡-六、常见问题&#34;&gt;&lt;strong&gt;💡 六、常见问题&lt;/strong&gt;&lt;/h4&gt;
&lt;h5 id=&#34;Q1：如何查看已下载的文件？&#34;&gt;&lt;strong&gt;Q1：如何查看已下载的文件？&lt;/strong&gt;&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;文件保存在容器的 &lt;code&gt;/data/ipfs&lt;/code&gt; 目录（映射到宿主机卷）。通过 &lt;code&gt;docker volume inspect ipfs_data&lt;/code&gt; 查看宿主机存储路径。&lt;/li&gt;
&lt;/ul&gt;
&lt;h5 id=&#34;Q2：如何重启节点？&#34;&gt;&lt;strong&gt;Q2：如何重启节点？&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker restart ipfs-node&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h5 id=&#34;Q3：如何更新镜像？&#34;&gt;&lt;strong&gt;Q3：如何更新镜像？&lt;/strong&gt;&lt;/h5&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker stop ipfs-node
docker rm ipfs-node
docker pull ipfs&amp;#x2F;kubo:latest
# 重新运行（使用原有数据卷）
docker run ...（参数同前）...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;hr&gt;
&lt;h4 id=&#34;✅-总结&#34;&gt;&lt;strong&gt;✅ 总结&lt;/strong&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;推荐工具&lt;/strong&gt;：使用官方镜像 &lt;code&gt;ipfs/kubo&lt;/code&gt; 快速部署容器化节点。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;核心优势&lt;/strong&gt;：&lt;strong&gt;隔离环境 + 持久化存储 + 一键升级&lt;/strong&gt;。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;适用场景&lt;/strong&gt;：&lt;/li&gt;
&lt;li&gt;开发测试环境&lt;/li&gt;
&lt;li&gt;生产环境分布式存储集群&lt;/li&gt;
&lt;li&gt;需频繁切换节点的场景&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;通过 Docker 管理 IPFS 节点，可大幅降低运维复杂度，更多细节参考 &lt;a href=&#34;https://docs.ipfs.tech/install/run-ipfs-in-docker/&#34;&gt;IPFS Docker 文档&lt;/a&gt;。&lt;/p&gt;
&lt;h2 id=&#34;固定并分享文件&#34;&gt;固定并分享文件&lt;/h2&gt;
&lt;h3 id=&#34;固定想要共享的文件&#34;&gt;固定想要共享的文件&lt;/h3&gt;
&lt;p&gt;在 IPFS 中，每一个文件都有一个独一无二的标识符 CID ，CID 在 IPFS 中对应具体文件，类似于 BT 的磁链，&lt;strong&gt;分享 CID 就等于分享文件&lt;/strong&gt;，只需要知道 CID 即可下载文件。&lt;/p&gt;
&lt;p&gt;CID 的示例如下（有两种格式 v0 和 v1，分别以 Qm 和 ba 开头）：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;QmPKhevNWUx89XBU82XF4UYs2xsdxZnG2xPz2uZsA6Yatm  &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;bafybeibcr7x6d2bo43ce6xaye6d6aogvbfmeokphpsvjlqv27udl34ads4&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;目前推荐使用后者。&lt;/p&gt;
&lt;p&gt;在配置中的 Import 部分把 CidVersion 参数改为 1 ，然后保存并重启 IPFS 即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-2.webp&#34; alt=&#34;2622b838c9ffae6bff2194898b9fbb31.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;配置完毕后，就可以开始固定文件了&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-3.webp&#34; alt=&#34;1rqjK.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;右键点击上传后的文件，设置固定&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-4.webp&#34; alt=&#34;右键点击上传后的文件，设置固定&#34;&gt;&lt;/p&gt;
&lt;p&gt;固定在本地节点&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-5.webp&#34; alt=&#34;1rxe6.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;复制-CID-以发布文件&#34;&gt;复制 CID 以发布文件&lt;/h3&gt;
&lt;p&gt;固定成功后再次点击右键，选择复制 CID ，就可以发布文件了。&lt;/p&gt;
&lt;p&gt;可以采用分享链接的方式分享文件，由于默认的公共网关被墙了，在分享前建议修改 IPFS 公共网关。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-6.webp&#34; alt=&#34;1rT4i.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;可用 IPFS 公共网关（随时更新）参考：&lt;br&gt;
&lt;a href=&#34;https://k51qzi5uqu5djx3hvne57dwcotpc8h76o2ygrxh05kck11j6wnhvse8jrfzf2w.ipns.dweb.link/&#34;&gt;https://k51qzi5uqu5djx3hvne57dwcotpc8h76o2ygrxh05kck11j6wnhvse8jrfzf2w.ipns.dweb.link/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;在下面的网址可以找到更多的可用公共网关&lt;br&gt;
&lt;a href=&#34;https://ipfs.github.io/public-gateway-checker/&#34;&gt;https://ipfs.github.io/public-gateway-checker/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;设置完成后右键文件-分享链接即可&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-7.webp&#34; alt=&#34;79b302b20e96503aab461e9af616234c.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-8.webp&#34; alt=&#34;b06de1123161326c350d2207be76cb7c.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;分享前可以检测一下自己网络的可用性。&lt;/p&gt;
&lt;p&gt;此网址可以检查自己的 IPFS 网络的可用性：&lt;br&gt;
&lt;a href=&#34;https://check.ipfs.network/&#34;&gt;https://check.ipfs.network/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;下面的 4 个检查得至少满足前 3 个，如果你有公网 IP 则会有第 4 个。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-9.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-10.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;移动本地文件仓库&#34;&gt;移动本地文件仓库&lt;/h3&gt;
&lt;p&gt;IPFS 安装以后，默认会在用户路径（C:\Users\你的用户名）下方创建一个名为 &lt;code&gt;.ipfs&lt;/code&gt; 的文件夹，用来存放固定的文件，如果 C 盘空间不足，可以选择移动 IPFS 仓库的默认位置。右键任务栏 IPFS 程序的图标，然后选择 Move Repository Location 即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-11.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;根据-CID-下载文件&#34;&gt;根据 CID 下载文件&lt;/h2&gt;
&lt;h3 id=&#34;使用-IPFS-原生下载功能下载文件&#34;&gt;使用 IPFS 原生下载功能下载文件&lt;/h3&gt;
&lt;p&gt;下载文件和上传文件是类似的，首先需要导入文件&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-12.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;在弹出的窗口中输入 CID ，可以自行指定文件名&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/12/05/2024120520230362a89a25b8b826ca.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;在下载前建议先设置固定，只要固定完成了，文件就一定可以保存到本地，以避免直接下载过程中出现错误。（固定一个来自 IPFS 路径的 CID 可能会需要一定时间，因为要从其他节点拉取文件）&lt;/p&gt;
&lt;p&gt;固定完成后点击右键，选择下载：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-13.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;接下来会使用浏览器的下载功能进行文件下载，先固定后下载或者直接下载这 2 种下载方式，原理都类似于 BT 是 P2P 的，能否下载成功取决于是否有人在做种。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-14.png&#34; alt=&#34;1rXkq.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果安装了 IDM、FDM 等下载软件，也可以使用这些软件接管下载，比如我用的是 FDM ：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-15.webp&#34; alt=&#34;1rmIp.png&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用-IPFS-公共网关下载文件&#34;&gt;使用 IPFS 公共网关下载文件&lt;/h3&gt;
&lt;p&gt;除了类似于 BT 的 P2P 以外，IPFS 还可以采用公共网关创建分享链接的方式分享文件，公共网关本身也是一个 IPFS 节点，但拥有公网 IP ，连接速度较快，可以帮助其他节点下载，具体来说就是用它生成直链，让下载者用这个直链下载，这是比较推荐的 IPFS 分享方式。&lt;/p&gt;
&lt;p&gt;IPFS下载链接结构为 &lt;strong&gt;网关+CID&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;示意图如下：&lt;br&gt;
&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-16.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;使用这种方式分享的时候下载者不需要软件，用浏览器、IDM 等即可直连下载。&lt;/p&gt;
&lt;p&gt;由于默认的公共网关被墙了，在分享前需要修改 IPFS 的公共网关，可以修改为以下网关中的一个：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;https:&amp;#x2F;&amp;#x2F;ipfs.hypha.coop
https:&amp;#x2F;&amp;#x2F;gw.ipfs-lens.dev
https:&amp;#x2F;&amp;#x2F;gateway.pinata.cloud
https:&amp;#x2F;&amp;#x2F;eth.sucks
https:&amp;#x2F;&amp;#x2F;i0.img2ipfs.com
https:&amp;#x2F;&amp;#x2F;gw.crustgw.work
https:&amp;#x2F;&amp;#x2F;gw.crust-gateway.xyz&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;按照下图所示设置：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-17.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后右键文件-分享链接即可&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-18.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-19.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;其他寻找公共网关的方法：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;可以在 &lt;a href=&#34;https://www.bestipfs.net/&#34;&gt;Best IPFS Gateway&lt;/a&gt; 输入 CID 来搜索更多合适的网关，搜索到以后点击右侧的下载按钮即可。&lt;/li&gt;
&lt;li&gt;在下面的网址中可以找到更多的可用公共网关&lt;br&gt;
&lt;a href=&#34;https://k51qzi5uqu5djx3hvne57dwcotpc8h76o2ygrxh05kck11j6wnhvse8jrfzf2w.ipns.dweb.link/&#34;&gt;https://k51qzi5uqu5djx3hvne57dwcotpc8h76o2ygrxh05kck11j6wnhvse8jrfzf2w.ipns.dweb.link/&lt;/a&gt;&lt;br&gt;
&lt;a href=&#34;https://ipfs.github.io/public-gateway-checker/&#34;&gt;https://ipfs.github.io/public-gateway-checker/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;使用-IPFS-本地网关下载文件&#34;&gt;使用 IPFS 本地网关下载文件&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;公共网关本身也是一个 IPFS 节点&lt;/strong&gt;，经由公共网关访问文件或文件夹 CID 可以理解为由对方代理来连接到 IPFS 网络中的资源，由于这些网关有公网 IP ，速度也比普通的家宽更快，所以通常建议用公共网关访问并下载资源。&lt;/p&gt;
&lt;p&gt;但是公共网关也可能&lt;strong&gt;面临被恶意举报导致封 CID 的情况&lt;/strong&gt;，这种时候除了更换其他公共网关，也可以用自己 IPFS 节点的本地网关访问资源，这种访问类似于 BT 是纯 P2P 的，也就是说，&lt;strong&gt;即使这个 CID 在所有公共网关上都被屏蔽了，只要你自己不屏蔽这个 CID 就能访问&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;在本地的 IPFS 启动后，在浏览器地址栏中输入 CID，后面加上 &lt;code&gt;.ipfs.localhost:8080&lt;/code&gt; ，即可用 IPFS 的本地网关查看并下载文件，示例如下：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;http://bafybeihon37a3qtxqynvphkt4ebe3hd42tdrfw4gstsadka5yijz3fjbfe.ipfs.localhost:8080&#34;&gt;http://bafybeihon37a3qtxqynvphkt4ebe3hd42tdrfw4gstsadka5yijz3fjbfe.ipfs.localhost:8080&lt;/a&gt;&lt;br&gt;
或者在 CID 前面加上路径形式的本地网关：&lt;br&gt;
&lt;a href=&#34;http://127.0.0.1:8080/ipfs/bafybeihon37a3qtxqynvphkt4ebe3hd42tdrfw4gstsadka5yijz3fjbfe/&#34;&gt;http://127.0.0.1:8080/ipfs/bafybeihon37a3qtxqynvphkt4ebe3hd42tdrfw4gstsadka5yijz3fjbfe/&lt;/a&gt;&lt;br&gt;
（注意是 http 不是 https ，这里的 http 只用来连接本地的 IPFS 节点，相当于 IPFS 成了代理，所以不必担心安全性）&lt;/p&gt;
&lt;p&gt;这个 CID 对应的是一个 html 文件，因此被浏览器渲染成了网页的样子，按 ctrl+s 可以把这个文件下载到本地查看，对于其他格式资源也是同理，这也就是为什么 IPFS 分享的东西能被浏览器或者 IDM 或者 FDM 等下载器直接下载的原因了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2025/01/10/PixPin_2025-01-10_17-56-16727e15eafe5521eb.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;此外，在安装 IPFS 客户端的情况下，在浏览器地址栏输入：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;ipfs:&amp;#x2F;&amp;#x2F;bafybeihon37a3qtxqynvphkt4ebe3hd42tdrfw4gstsadka5yijz3fjbfe&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;也会自动打开刚才的本地网关。&lt;/p&gt;
&lt;p&gt;从上面这个例子可以看出，ipfs 某种意义上可以代替 http 来访问互联网中的内容，CID 就是内容的地址，IPFS 的这种特性称为“&lt;strong&gt;内容寻址&lt;/strong&gt;”，也就是不根据 IP 地址而根据内容本身的哈希值来在网络中查找（这点类似于 BT）。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;.ipfs.localhost:8080&lt;/code&gt; 中最后 4 位数字为本地网关的端口号，通常为 &lt;code&gt;8080&lt;/code&gt;，但是有时候也可能变化，此时端口被占用就无法使用，常见原因比如酸奶网盘与 IPFS 客户端冲突等，如果发现本地网关无法使用，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-20.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;此时需要查看本地节点的 .&lt;code&gt;ipfs&lt;/code&gt; 仓库中的 &lt;code&gt;config&lt;/code&gt; 文件，右键用记事本打开后，下图中箭头所指的四位数字就是你的本地网关端口号，使用这个端口号即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-21.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-22.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用-FDM-批量下载-IPFS-链接&#34;&gt;使用 FDM 批量下载 IPFS 链接&lt;/h3&gt;
&lt;p&gt;在安装此&lt;a href=&#34;https://cangku.moe/archives/214632&#34;&gt;油猴脚本&lt;/a&gt;的情况下，可以使用 FDM 来批量下载。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.freedownloadmanager.org/zh/&#34;&gt;&lt;strong&gt;FDM&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(Free Download Manager)&lt;/strong&gt; 是一款完全免费的下载软件，不会存在破解版 IDM 可能的弹窗问题，这里使用 FDM 来说明如何批量下载已复制的下载链接。&lt;/p&gt;
&lt;p&gt;首先在这里下载最新版的 FDM 并安装：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://files2.freedownloadmanager.org/6/latest/fdm_x64_setup.exe&#34;&gt;https://files2.freedownloadmanager.org/6/latest/fdm_x64_setup.exe&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;安装完成后，复制链接，点右上角的三根横线，从剪贴板粘贴链接，选择下载路径进行下载即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-23.webp&#34; alt=&#34;1c7d5560f8d3e0fbf6fb2e9b57ed5933.webp&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;IPFS-其他细节操作&#34;&gt;IPFS 其他细节操作&lt;/h2&gt;
&lt;h3 id=&#34;清理非固定文件释放磁盘空间&#34;&gt;清理非固定文件释放磁盘空间&lt;/h3&gt;
&lt;p&gt;当 IPFS 的本地文件过多，可以选择任务栏图标中的 Run Garbage Collector 进行清理，这个操作会清理所有没有在文件选项卡中显示的文件释放磁盘空间。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-24.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;PFS-辅助油猴脚本&#34;&gt;PFS 辅助油猴脚本&lt;/h3&gt;
&lt;p&gt;此油猴脚本用于自动识别网页中的 IPFS 链接和 CID，提供一键复制、网关测速和批量操作功能。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;安装后鼠标移到 CID 上可以弹出悬浮窗。&lt;/li&gt;
&lt;li&gt;在右下角显示&lt;strong&gt;批量复制 CID 、文件名、下载链接&lt;/strong&gt;按钮，浮窗可以收起。&lt;/li&gt;
&lt;li&gt;IPFS 测速器功能，可以测试各大网关能否访问（功能类似&lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant/releases&#34;&gt;IPFS分享助手&lt;/a&gt;），内置常见网关，支持自定义网关。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-25.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Github&lt;/strong&gt;：IPFS CID Copy Helper &lt;a href=&#34;https://github.com/cenglin123/ipfs-cid-copy-helper&#34;&gt;https://github.com/cenglin123/ipfs-cid-copy-helper&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;IPFS-分享助手&#34;&gt;IPFS 分享助手&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant/releases&#34;&gt;IPFS 分享助手&lt;/a&gt;是本人开发的一个小程序，用来简化 IPFS 分享的流程，主要功能有：&lt;/p&gt;
&lt;p&gt;CID 批量计算、文件批量导入、CID 批量拉取、CID 格式转换、分享链接批量生成、批量固定到 Crust 等分享相关的一站式功能。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/12/05/20241205202749fc11eecbec452fa3.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;此处仅简单介绍，具体用法请参阅 &lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant/releases&#34;&gt;GitHub&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;开启-DHT-加速&#34;&gt;开启 DHT 加速&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;2024-10-09 更新：实际测试，DHT 加速会显著增加 IPFS 的资源消耗，并且相比于其消耗的资源来说对效率的提升较为有限（氪佬随意），在使用 Crust 等托管平台而非自己做种时，不建议开启 DHT 加速&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;在上传之前可以在配置选项卡中如下修改配置信息，开启 DHT 加速，DHT 加速可以提高连接节点数量，增加效率。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;&amp;quot;AcceleratedDHTClient&amp;quot;: true,&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-26.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;关于分享文件的可用性&#34;&gt;关于分享文件的可用性&lt;/h3&gt;
&lt;p&gt;IPFS 类似于磁链，也需要有人“做种”，需要有人固定文件（做种），并且在线，才可以下载。&lt;/p&gt;
&lt;p&gt;可以在这个网址中检测 CID 是否可用：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://explore.ipld.io/&#34;&gt;https://explore.ipld.io/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-27.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;也可以使用 IPFS 分享助手进行测速来确认文件是否可用。&lt;/p&gt;
&lt;h2 id=&#34;使用-IPFS-托管平台托管文件&#34;&gt;使用 IPFS 托管平台托管文件&lt;/h2&gt;
&lt;p&gt;由于 IPFS 类似 BT 属于去中心化的分享方式，假如没人开机做种，就会导致后续的下载者没有办法下载。这种时候可以使用托管平台托管文件，代为“做种”。用法类似于网盘，但是分享不通过分享系统，而是采用 CID 进行，因此没有审核、举报系统，不管文件保存在哪里，只要 CID 匹配就可以下载到文件。&lt;/p&gt;
&lt;p&gt;IPFS 的托管平台有很多，和 IPFS 的网关不同，这些托管平台大多数都没有被墙可直连，比如支付加密货币把文件托管给矿工的 &lt;a href=&#34;https://crust.network/&#34;&gt;&lt;strong&gt;Crust&lt;/strong&gt;&lt;/a&gt; 以及基于 Crust 开发的 &lt;a href=&#34;https://cangku.moe/archives/212970&#34;&gt;&lt;strong&gt;酸奶网盘&lt;/strong&gt;&lt;/a&gt; 、以及目前免费的 &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2504124-keyword-Aleph.html&#34;&gt;Aleph&lt;/a&gt;。&lt;/p&gt;
&lt;h3 id=&#34;使用酸奶网盘托管文件到-Crust-平台&#34;&gt;使用酸奶网盘托管文件到 Crust 平台&lt;/h3&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;2025&amp;#x2F;05&amp;#x2F;19 更新：由于 Crust 网络现在状态不佳，本节部分的内容仅供参考。&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;本节内容&lt;strong&gt;是一个操作流程&lt;/strong&gt;，旨在快速上手，只需要按照流程操作即可，具体的原理及解释详见 4.3 节。&lt;/p&gt;
&lt;p&gt;以下正式开始&lt;/p&gt;
&lt;p&gt;打开 &lt;a href=&#34;https://yoghourt.cloud/&#34;&gt;https://yoghourt.cloud/&lt;/a&gt; 酸奶网盘的官网，下载最新版酸奶网盘并安装，或者在这里下载&lt;br&gt;
&lt;a href=&#34;https://gw.crustgw.work/ipfs/bafybeiaeq2sblmnjvs27qr7romzc6ryqz5qiy6ng2ltrs7tgxux7rdeqh4?filename=yogurt-cloud-client-0.1.4-setup.exe&#34;&gt;https://gw.crustgw.work/ipfs/bafybeiaeq2sblmnjvs27qr7romzc6ryqz5qiy6ng2ltrs7tgxux7rdeqh4?filename=yogurt-cloud-client-0.1.4-setup.exe&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;当右下角显示 IPFS 连接成功，即可拖入上传文件&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/11/06/20241106002704a068479ff75ee1f9.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后等待上传完毕&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-28.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上传完毕后等待至副本数大于 0&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-29.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后打开 &lt;a href=&#34;https://cangku.moe/archives/213088&#34;&gt;IPFS 分享助手&lt;/a&gt;：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.eth.sucks/&#34;&gt;https://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.eth.sucks/&lt;/a&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;在右下角的计算器中拖入那个文件，然后计算 CID 后点击【填写CID和文件名到主输入框】，&lt;/li&gt;
&lt;li&gt;填写后点击【下载网关测速】，&lt;/li&gt;
&lt;li&gt;测速完成后点击【生成下载链接】，即可得到能直接链接到资源的链接了，&lt;/li&gt;
&lt;li&gt;再点击【复制下载链接】，即可复制链接并发布，下载的时候只需要打开这个链接，用浏览器或 IDM 就能下载。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/11/06/20241106003400214b19f1a669894e.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果某个链接不能用了，把链接中的 CID (即 baf…6cwe 这样的字符串) 复制后填入图中的位置，重复 2 3 4 步骤即可。&lt;/p&gt;
&lt;p&gt;下面是最终得到的链接，可以直接在浏览器中打开使用：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;[img]https:&amp;#x2F;&amp;#x2F;i0.img2ipfs.com&amp;#x2F;ipfs&amp;#x2F;bafkreibm2z34rvt5qhbiz3cv4524skjefg2mard7h4i7stqinpi5sl6cwe?filename&amp;#x3D;%E4%B8%BA%E4%BB%80%E4%B9%88%E8%A6%81%E5%88%86%E4%BA%AB%EF%BC%9F.jpg[&amp;#x2F;img]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;这是刚才上传的图&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/05/20250905184701.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用-aleph-im-进行托管&#34;&gt;使用 &lt;a href=&#34;http://aleph.im&#34;&gt;aleph.im&lt;/a&gt; 进行托管&lt;/h3&gt;
&lt;p&gt;使用 aleph 可以实现类似于 BT 的做种后离线的方式托管给 IPFS 矿工，就目前而言（2025/05/19），效果比 Crust 更好。&lt;/p&gt;
&lt;p&gt;详见这 2 篇仓库文章：&lt;br&gt;
&lt;a href=&#34;https://cangku.moe/archives/217781&#34;&gt;[技巧分享] [IPFS] 通过aleph.im网络存储固定ipfs文件&lt;/a&gt;&lt;br&gt;
&lt;a href=&#34;https://cangku.moe/archives/219272&#34;&gt;[技巧分享][IPFS] Aleph拉取教程入门版&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;IPFS托管网页（上面的访问不了可以看这个）&lt;br&gt;
&lt;a href=&#34;https://bafybeifm5rkvyjlw3mb6n5ymlfjrj25352mz6ixqsxz2uog5gdwipizgtm.eth.sucks/&#34;&gt;[技巧分享] [IPFS] 通过aleph.im网络存储固定ipfs文件&lt;/a&gt;&lt;br&gt;
&lt;a href=&#34;http://bafybeieccjo7iis64hbq64jz2zrjjhiys2scfpp2gqrdvdxqpxrock5c24.eth.sucks/&#34;&gt;[技巧分享][IPFS] Aleph拉取教程入门版&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;南+&lt;br&gt;
&lt;a href=&#34;https://www.south-plus.net/read.php?tid-2504124-keyword-IPFS.html&#34;&gt;[技巧分享] [IPFS] 通过aleph.im网络存储固定ipfs文件&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Aleph 分享助手下载&lt;br&gt;
&lt;a href=&#34;https://github.com/cenglin123/aleph-managerGUI/releases/latest&#34;&gt;https://github.com/cenglin123/aleph-managerGUI&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用托管平台搭配-IPNS-托管文件夹&#34;&gt;使用托管平台搭配 IPNS 托管文件夹&lt;/h3&gt;
&lt;p&gt;接下来说明一些仅在使用托管平台时推荐的分享技巧。&lt;/p&gt;
&lt;p&gt;我们可以使用 &lt;strong&gt;CrustFiles&lt;/strong&gt; 或者 &lt;a href=&#34;https://cangku.moe/archives/212970&#34;&gt;&lt;strong&gt;酸奶网盘&lt;/strong&gt;&lt;/a&gt; 、Aleph 等把文件分别托管 (又称上链) 到 IPFS 网络中，然后通过&lt;strong&gt;本地 IPFS 客户端聚合文件以进行管理&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;具体来说，先把文件上传到t托管平台进行托管，然后再把这些已经托管的文件的 CID 导入并聚合到本地 IPFS 的一个文件夹中（不必固定到本地，这样就不会占用本地空间），这样一来，本地做种&lt;strong&gt;只需要做种聚合文件夹即可&lt;/strong&gt;，使得文件夹中的内容能被 IPFS 网络访问，&lt;strong&gt;内容则交由托管平台保存，不占用本地空间&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;也因此，在使用托管的情况下 IPFS 的做种比 BT 更轻量，希望大家可以积极帮助他人做种，只需要把别人的文件夹 CID 导入但不固定在本地即可（注意不要改动文件路径中的文件名，否则会导致 CID 发生变化，想重命名进行管理的话，可以新建一个文件夹把东西整个丢进去），如此可以帮助他人保持文件夹路径的可用性。内容托管在矿工那里，做种不消耗自己的流量，也可以减少被运营商查水表的可能性。&lt;/p&gt;
&lt;p&gt;由于 IPFS 内容寻址的特性，不同内容的 CID 都是不同的，假如你的内容需要频繁更新，每次都要改链接无疑很不方便。此时可以把聚合文件夹发布到 &lt;strong&gt;IPNS&lt;/strong&gt;，把文件夹的 CID 与 IPNS 地址相关联。&lt;/p&gt;
&lt;p&gt;和 CID 不同， IPNS 地址是不变的，特别适合需要持续更新的内容，其内容需要使用你节点的私钥才能更改，可以当成自己的一个“&lt;strong&gt;域名&lt;/strong&gt;”来使用。这个“域名”也是去中心化的，保存在 DHT （分布式哈希表）中，只要你的节点&lt;strong&gt;每天至少上一次线&lt;/strong&gt;，就可以保证这个“域名”可用，和传统的 HTTP 域名不同， &lt;strong&gt;IPNS 即使关机也不会造成“域名”无法访问&lt;/strong&gt;。（如果你有普通域名的的话，可以把 CID 和域名关联起来）&lt;/p&gt;
&lt;p&gt;下面是我用 IPNS 发布的 IPFS 分享助手软件，其中 k51…wi25 就是 IPNS “域名”，.eth.sucks 则是子域名形式的公共网关。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.eth.sucks/&#34;&gt;https://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.eth.sucks&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;上面是子域名形式的链接，路径形式的链接则应该如下：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://eth.sucks/ipns/k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25&#34;&gt;https://eth.sucks/ipns/k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;用本地网关进行访问时，子域名形式和路径形式的链接如下：&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;http://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.ipns.localhost:8080&#34;&gt;http://k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25.ipns.localhost:8080&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;http://127.0.0.1:8080/ipns/k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25&#34;&gt;http://127.0.0.1:8080/ipns/k51qzi5uqu5dh1ts2qvcw3069src00zyjw0qmwdkb102k8q4ft8bztw75iwi25&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;接下来我新生成一个名为 test 的 IPNS 密钥用来发布其他文件夹， IPNS 密钥的地址是固定的，这样每次更新内容后只需要把更新后的文件夹 CID 重新发布一次 IPNS 即可，不用更新链接。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-30.webp&#34; alt=&#34;f3d7d49820eff9869192e8db63618515.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-31.webp&#34; alt=&#34;8bd2890e02a1b8ace4d0e3674d7da23d.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;点击发布，然后稍作等待：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-32.webp&#34; alt=&#34;bd1f34ac459e15aa7ad3c31d608f91ab.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;复制上面的地址就可以发布了，由于 DHT 网络的广播需要时间，让 IPNS “域名”生效可能需要半个小时至一个小时左右，发布后稍作等待即可。&lt;/p&gt;
&lt;p&gt;效果如下：&lt;br&gt;
&lt;a href=&#34;https://ipfs.io/ipns/k51qzi5uqu5dk5cbbjykfthqkz6qh9r98zauauz2n6j843rv3e93fgbfh4abiu&#34;&gt;https://ipfs.io/ipns/k51qzi5uqu5dk5cbbjykfthqkz6qh9r98zauauz2n6j843rv3e93fgbfh4abiu&lt;/a&gt;&lt;br&gt;
也可以通过比如 &lt;a href=&#34;https://dashboard.4everland.org/&#34;&gt;4everland.org&lt;/a&gt; 这样的平台来免费托管 IPNS 地址，具体可以参考&lt;a href=&#34;https://cangku.moe/archives/216179#heading-13&#34;&gt;这篇文章&lt;/a&gt;的第 3 节。&lt;/p&gt;
&lt;p&gt;关于更多托管平台：&lt;a href=&#34;https://hxcy.top/548738.html&#34;&gt;盘点主流IPFS托管平台:功能、限制与推荐指数全面对比&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;IPFS-本地文件管理：把-IPFS-当作网盘来用&#34;&gt;IPFS 本地文件管理：把 IPFS 当作网盘来用&lt;/h2&gt;
&lt;h3 id=&#34;IPFS-能否像网盘那样“转存”？&#34;&gt;IPFS 能否像网盘那样“转存”？&lt;/h3&gt;
&lt;p&gt;IPFS 全称“&lt;strong&gt;星际文件系统&lt;/strong&gt;”，既然是文件系统，自然是能够进行文件管理的，使用时的手感&lt;strong&gt;非常类似秒传链接&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;具体来说，就是把 CID 导入到 IPFS 中但不固定到本地节点，这样就能在不占用本地空间的情况下进行文件管理了。&lt;/p&gt;
&lt;p&gt;可以给大家看一下我的某个 IPFS 仓库，注意右上角的显示大小和实际占用大小。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-33.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;在这样的情况下，&lt;strong&gt;CID 也就可以类比百度网盘的秒传链接了，本地的 IPFS 节点则类比一个网盘客户端&lt;/strong&gt;。而导入 CID 的过程自然就是“&lt;strong&gt;转存&lt;/strong&gt;”了。不过这里的转存我加了双引号，是因为虽然很类似，但是 IPFS 节点导入 CID 和网盘转存还是有区别的。&lt;/p&gt;
&lt;p&gt;IPFS 是一个去中心化的系统，由众多节点组成，就像下面这张图里一样，每个节点都是网络的一部分，彼此平等，不存在客户端和服务端的区别，或者说节点既是客户端也是服务端。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/11/14/2024111416255245078ca26837916b.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;这一点熟悉 BT 的朋友应该能理解是什么意思，因为 IPFS 的底层大量地借鉴了 BT。&lt;/p&gt;
&lt;h3 id=&#34;IPFS-的默克尔树与虚空做种&#34;&gt;IPFS 的默克尔树与虚空做种&lt;/h3&gt;
&lt;p&gt;不过 BT 并不能对一个你没有的文件做种，但是 IPFS 可以。&lt;/p&gt;
&lt;p&gt;IPFS 为什么能做到呢？这里就必须提一下 IPFS 对于文件的处理方式了——&lt;strong&gt;默克尔树&lt;/strong&gt;(Merkel Tree)（严格来说是 Merkel DAG ，不过这里为了不干扰理解就叫默克尔树了）&lt;/p&gt;
&lt;p&gt;大家不要觉得这个词高大上，这个东西并不是什么很高深的东西，其实就是在 IPFS 中，文件会被&lt;strong&gt;拆成小块进行保存和传输&lt;/strong&gt;，而这些小块由一个像树一样的结构被组织起来进行管理，因为是一个叫做默克尔的人申请的专利，所以叫做默克尔树。&lt;/p&gt;
&lt;p&gt;这个结构中每个小块像叶子一样长在树上，所以也叫做“叶子节点”。&lt;/p&gt;
&lt;p&gt;每个叶子都有自己的独特且唯一的身份牌，这样才能证明你位于树的哪个位置，对于 IPFS 而言，就是 CID（通过哈希值算得）。&lt;/p&gt;
&lt;p&gt;IPFS 下载文件也就可以理解为是根据树的结构在整个 IPFS 网络中找对应小块，然后把它们组装起来的过程。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;这些块具体由谁保存并不重要&lt;/strong&gt;，只要 IPFS 网络中存在这个 CID 所对应的块，即使相隔很远，也能通过多次节点跳转找到。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-34.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;一个 CID 只能对应一个独立的文件块，并不能表示这个树长什么样，这个树的结构其实被保存在你本地的 IPFS 节点的 DHT （分布式哈希表）中。&lt;/p&gt;
&lt;p&gt;相比于保存整个文件，DHT 中只保存了每个 CID 所对应的树的关系，纯文本，因此非常的轻量。&lt;/p&gt;
&lt;p&gt;下载的时候，照着树按图索骥，拿全所有的块即可组装出完整的文件。&lt;/p&gt;
&lt;p&gt;而这个默克尔树也正是 IPFS 能做到 BT 做不到的“&lt;strong&gt;虚空做种&lt;/strong&gt;”的理由，因为做种只需要给出 CID 对应的树结构，做种者实际上并不需要保存文件块本身，仅保存&lt;strong&gt;文件的 CID 和树结构&lt;/strong&gt;，提供一个指路的效果即可，具体的文件块完全可以交给网络中的&lt;strong&gt;矿工&lt;/strong&gt;保存。&lt;/p&gt;
&lt;h3 id=&#34;批量“转存”文件到本地-IPFS-节点&#34;&gt;批量“转存”文件到本地 IPFS 节点&lt;/h3&gt;
&lt;p&gt;对于已经存储在 IPFS 公网中的 CID，是可以被任意新加入的 IPFS 节点访问的，具体来说，按下图操作即可把一个 CID 连同其树结构，一起导入到本地 IPFS 节点中。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/11/14/PixPin_2024-11-14_17-49-3719c7fc52f36d3943.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;使用 IPFS 分享助手的情况下，点击右下角的 【WebUI】 按钮可以打开上述界面。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-35.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;这种情况并没有导入数据，所以如果要进行下载，需要右键文件，然后点击【设置固定】，选择固定到【本地节点】才能保存文件数据到本地节点（也就是矿工所做的事情）。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-36.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;不过，假如需要导入的 CID 很多就很不方便了。&lt;/p&gt;
&lt;p&gt;这时可以使用 &lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant/releases&#34;&gt;IPFS 分享助手&lt;/a&gt;的批量导入功能。&lt;/p&gt;
&lt;p&gt;首先在 Crust 或者酸奶网盘确认文件确实已经上链（如果没有上链，导入会卡住，因为要在 IPFS 网络中查找）&lt;/p&gt;
&lt;p&gt;然后通过各种办法收集到这些要导入文件的 CID 以及文件名，可以通过油猴脚本在网页或 IPFS 文件夹页面中复制，如果有本地文件的话，也可以通过 IPFS 分享助手的 CID 计算器算出 CID 并填写到主输入框中，然后点击导入。&lt;/p&gt;
&lt;p&gt;具体如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.picgo.net/2024/11/14/PixPin_2024-11-14_18-16-348a5ebbe4af257e16.jpg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后点击【WebUI】可以进行确认&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-37.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;IPFS 程序有一个小问题，即使在配置中设置了默认启用 cidv1，新建文件夹时依然是 cidv0，这里有个权宜之计是先单独从 IPFS 路径导入一个 cidv1 格式的空文件夹，然后再把文件导入到里面。&lt;/p&gt;
&lt;p&gt;cidv1 格式的空文件夹 CID 如下&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;bafybeiczsscdsbs7ffqz55asqdf3smv6klcw3gofszvwlyarci47bgf354&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;注意&lt;strong&gt;文件名会影响文件夹 CID 的计算&lt;/strong&gt;，需要注意保持文件夹下文件的文件名不变才能保证文件夹 CID 正确，文件夹自身的名字则无所谓，这点在进行文件管理时需要注意。&lt;/p&gt;
&lt;p&gt;实在求稳的话，可以新建一个文件夹把所有内容原样丢进去，然后重命名最上层的文件夹进行文件管理。&lt;/p&gt;
&lt;h3 id=&#34;IPFS-轻量化做种：通过P2P网络辅助公共网关发现文件&#34;&gt;IPFS 轻量化做种：通过P2P网络辅助公共网关发现文件&lt;/h3&gt;
&lt;p&gt;在 IPFS 节点中导入 CID 完毕后就可以开始做种了，文件保存在矿工手里，因此流量也由矿工承担。&lt;/p&gt;
&lt;p&gt;如此就可以实现轻量化的做种（本地只是提供一个指路的效果，做了一个&lt;strong&gt;结构意义上的种&lt;/strong&gt;，可以叫做“结构种”，或者中二点叫“虚空种”也行）&lt;/p&gt;
&lt;p&gt;这种做种方式尤其适合做种聚合大量文件的文件夹的 CID，由于聚合后文件夹的总大小往往很大（比如 200GB），这种大小的文件夹是很难单独上链被矿工保存的，此时把多个小文件聚合成大文件夹，然后做种这个文件夹的及其下面的文件的 CID ，就可以在不占用本地空间的情况下维持可用性。&lt;/p&gt;
&lt;p&gt;并且，更多的 IPFS 节点数量也有助于 IPFS 公共网关更快地发现文件。&lt;/p&gt;
&lt;p&gt;有些时候某个 CID 用某个公共网关找不到，但是用 &lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant&#34;&gt;IPFS 分享助手&lt;/a&gt;测速或者 &lt;a href=&#34;https://ipfs-scan.io/&#34;&gt;IPFS-SCAN&lt;/a&gt; 测速以后，这个 CID 就能被该网关找到了。因此测速这个动作，可以理解为向各个公共网关广播询问有没有这个 CID，然后公共网关会就近查找，节点越多查找的速度就越快（有人称这种现象为“预热”）。&lt;/p&gt;
&lt;p&gt;也就是说做种的人越多，公共网关就有更高的概率通过询问最近的做种者找到某个 CID，然后通过实际保存了文件块的矿工那里下载实际的文件块。作为查找中转的节点实际上不需要真的持有这些文件块，只要持有文件结构即可，等同于起了一个为公共网关指路效果。&lt;/p&gt;
&lt;p&gt;注意前面提到过，CID 本身不能表示树结构，因此做种除了做文件夹自身的 CID，还需要连同整个文件夹的树结构一起做种，具体来说，做种后要确认文件夹下方的内容确实可以访问，保证树结构是建立起来了的。&lt;/p&gt;
&lt;p&gt;如果是多级目录的话，文件夹需要保证点开能看见下方内容，文件的话能看见就行，不必打开；单层目录则只要能看见目录下的内容就可以了。（参考上一节最后一张图）&lt;/p&gt;
&lt;h2 id=&#34;IPFS的安全性探讨&#34;&gt;IPFS的安全性探讨&lt;/h2&gt;
&lt;h3 id=&#34;IPFS无法举报的原理：权责不明&#34;&gt;IPFS无法举报的原理：权责不明&lt;/h3&gt;
&lt;p&gt;小结一下，上文中所提到的， IPFS 在拆分、组装、存储、查找、传输、下载文件的特性，叫做“&lt;strong&gt;内容寻址&lt;/strong&gt;”，这是 IPFS 区别于中心化网盘的最重要的点。&lt;/p&gt;
&lt;p&gt;内容寻址使得 IPFS 网络中的内容不必保存在某个具体的位置，只要网络中有人保存了，就能从他那里下载（保存的人通常是矿工，当然也可以自己保存并做种，把文件固定在本地就可以了）。&lt;/p&gt;
&lt;p&gt;这样的做法极大地提升了内容的安全性，这样一来举报者就没有办法向某个具体的网盘或者机构恶意举报，一次性封禁文件了。换言之 IPFS 通过主动割裂分享和存储之间的联系，从而达成了在内容托管上的权责不明。&lt;/p&gt;
&lt;p&gt;权责不明就是安全分享的最佳实践方案（不能伤害一个无法选中的单位）。&lt;/p&gt;
&lt;p&gt;并且做种时的流量是走的矿工的而不是分享者的，能减少 BT 做种那样因为流量异常被运营商查水表的概率。做种者所需要做的仅仅只是“联结他人”而已，通过 P2P 的联结建立起一个能查找资源的网络，辅助各大公共网关下载文件。&lt;strong&gt;IPFS 在网络层有基本的 TLS 加密，不是裸奔，这可以说极大地降低了做种者的安全性方面的压力&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;IPFS是如何防止吸血的？&#34;&gt;IPFS是如何防止吸血的？&lt;/h3&gt;
&lt;p&gt;此外为了&lt;strong&gt;防止 BT 中的吸血行为&lt;/strong&gt;，IPFS 有一个 Bitswap 信用度，如果一个节点交换数据不积极，只下载不上传，那么其他节点给它数据的概率和速度都会降低，需要经常挂机和其他节点交换数据刷一些信用度，才能解决这个问题（信用度账本是节点双方的各执一份的，一方造假是没用的，账本冲突会导致信用度重置，重头再来）。&lt;/p&gt;
&lt;p&gt;对于个人来说，信用度不见得很高，如果纯用 P2P 的方式通过本地网关下载（先固定再下载可以降低断连的概率），下载大文件有可能下到后面就被其他节点限速了。因此，假如想要快速下载，比较好的方式是使用 IPFS 网关来下载，目前网络上有很多可供使用的公共网关。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;公共网关本身也是一个 IPFS 节点&lt;/strong&gt;，经由公共网关访问文件或文件夹 CID 可以理解为由对方代理来连接到 IPFS 网络中的资源，由于这些网关有公网 IP ，速度也比普通的家宽更快。&lt;/p&gt;
&lt;p&gt;但是公共网关不比百度这种大厂，大部分由个人提供（这些网关提供者通常也是矿工），承载能力有限，如果短时间大量的人挤着下，可能会导致出现问题。因此建议生成下载链接的时候分摊到多个网关上，以进行负载均衡。（当然，如果有能力还是建议用 P2P 下载，以减轻公共网关的压力，有条件也可以自己用服务器搭一个公共网关来自用）&lt;/p&gt;
&lt;p&gt;目前 1.1.5 版本以后的 IPFS 分享助手已经内置了网关负载均衡功能，具体可以参考 &lt;a href=&#34;https://github.com/cenglin123/IPFS-ShareAssistant&#34;&gt;IPFS 分享助手&lt;/a&gt;的文章。&lt;/p&gt;
&lt;h3 id=&#34;公共网关的恶意举报问题、本地网关&#34;&gt;公共网关的恶意举报问题、本地网关&lt;/h3&gt;
&lt;p&gt;但是公共网关也可能&lt;strong&gt;面临被恶意举报导致封 CID 的情况&lt;/strong&gt;，这种时候除了更换其他公共网关，也可以用自己 IPFS 节点的本地网关访问资源，这种访问类似于 BT 是纯 P2P 的，也就是说，&lt;strong&gt;即使这个 CID 在所有公共网关上都被屏蔽了，只要你自己不屏蔽这个 CID 就能访问&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;不过普通家宽没有公网 IP，直接下载的话速度会比公共网关慢，一般用来获取文件夹中的 CID 列表，然后自行找其他公共网关生成下载连接下载会更好一些。&lt;/p&gt;
&lt;p&gt;具体操作如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-38.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后可以通过纯 P2P 的本地网关打开文件夹，使用油猴脚本进行复制 CID、文件名等操作：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-39.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;N+&lt;br&gt;
&lt;a href=&#34;https://www.south-plus.net/read.php?tid-2369384.html&#34;&gt;[技巧分享] 把IPFS当作网盘来用-IPFS进阶教程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;更多托管平台可以参考这篇文章：&lt;br&gt;
&lt;a href=&#34;https://cangku.moe/archives/216179&#34;&gt;[技巧分享] 盘点主流IPFS托管平台：功能、限制与推荐指数全面对比&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;IPFS-的优缺点及适用场景的个人浅见&#34;&gt;IPFS 的优缺点及适用场景的个人浅见&lt;/h2&gt;
&lt;h3 id=&#34;资源分享的安全级别排名&#34;&gt;资源分享的安全级别排名&lt;/h3&gt;
&lt;p&gt;本人在 &lt;a href=&#34;https://hxcy.top/541697.html&#34;&gt;&lt;strong&gt;之前的文章&lt;/strong&gt;&lt;/a&gt;中讨论过分享的几种安全级别，这里简要带过一下：&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;多层加密压缩包&lt;/strong&gt;：可以防止网盘扫描，但是无法防止在线解压（手机端可以解压包括 .7z 在内的所有格式）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;分卷压缩包&lt;/strong&gt;及&lt;strong&gt;自解压压缩包&lt;/strong&gt;：无法被在线解压，安全性高于前者。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;专有格式加密文件&lt;/strong&gt;：如 Veracrypt 加密卷等，相比于通用的压缩文件，安全性更高一些。但无法应对举报造成的强制违规。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;隐写文件&lt;/strong&gt;：无法被在线解压，并且违规可申诉，如果被举报到无法分享/下载，申诉即可。安全性高于前述所有。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BT、IPFS 等去中心化分享方案&lt;/strong&gt;：没有审核系统，安全性最高。但缺点是做不到长时有效稳定。&lt;/li&gt;
&lt;/ol&gt;
&lt;/blockquote&gt;
&lt;p&gt;总的来说，根据 【&lt;strong&gt;1. 能否加密&lt;/strong&gt;】 【&lt;strong&gt;2. 能否在线解压&lt;/strong&gt;】 【&lt;strong&gt;3. 能否被举报&lt;/strong&gt;】，可以把分享方式大致划分出 3 个大的安全级别。&lt;/p&gt;
&lt;p&gt;那么上述这么多级别，应该怎么选择呢？&lt;/p&gt;
&lt;p&gt;在机器学习领域有一个定理叫做“&lt;strong&gt;没有免费午餐定理&lt;/strong&gt;”（NFL），是说没有一种算法可以在所有问题上都表现最好。对于安全分享方案这个问题，也是类似的，即&lt;strong&gt;不可能存在能够同时兼顾所有场景的分享方案，我们总是需要根据特定场景选择最适合的方案&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;对于压缩包方案安全级别问题，我在 &lt;a href=&#34;https://hxcy.top/541697.html&#34;&gt;&lt;strong&gt;之前的文章&lt;/strong&gt;&lt;/a&gt;中已经讨论过，这里就不再赘述了，感兴趣可以参看，本文我想重点讨论一下 IPFS 方案的适用场景。&lt;/p&gt;
&lt;h3 id=&#34;IPFS-分享方案的优缺点分析&#34;&gt;IPFS 分享方案的优缺点分析&lt;/h3&gt;
&lt;p&gt;个人认为，IPFS 分享相比于网盘分享，其最大优势在于无法被举报，虽然做不到网盘那样长时有效稳定，但是其去中心化分享的特点令其在应对倒卖者的举报上具有无与伦比的优势。相比于同属去中心化分享的磁链方案，&lt;strong&gt;IPFS 可以选择托管平台，也可以自己做种&lt;/strong&gt;，在 &lt;a href=&#34;https://cangku.moe/archives/212812&#34;&gt;&lt;strong&gt;托管平台&lt;/strong&gt;&lt;/a&gt;[7] 选得比较靠谱的情况下，也可以做到类似于网盘那样的长期保存。&lt;/p&gt;
&lt;p&gt;由于 IPFS 类似磁链的去中心化特点，分享的安全性有了很大的保障。即使托管平台被攻击或者跑路，只要网上还有人固定文件（做种），就仍有机会下载。并且&lt;strong&gt;相比于磁链完全靠用户做种，IPFS 可以选择托管也可以选择做种&lt;/strong&gt;，具有更佳的&lt;strong&gt;灵活性&lt;/strong&gt;，可以减轻分享者的负担。&lt;/p&gt;
&lt;p&gt;不过 IPFS 作为去中心化的分享方案，也自然有其该有的缺点：首先靠谱的托管平台不好找，其次如果资源比较冷门没人长时间固定（做种），也会出现类似于磁链那样死种的情况。但是相比于磁链， IPFS 在保种这个问题上已经有很大程度的改进了，因为可以选择托管，做种也不需要公网 IP。&lt;/p&gt;
&lt;h3 id=&#34;IPFS-分享方案与网盘分享方案的对比&#34;&gt;IPFS 分享方案与网盘分享方案的对比&lt;/h3&gt;
&lt;p&gt;分析完上述优缺点，我们可以设想一下其适用的最佳场景，在设想之前，我们需要先对比一下网盘分享的方案。&lt;/p&gt;
&lt;p&gt;如果我们想进行长期有效稳定的资源分享，网盘一定是最佳选择，因为运营商代替用户保管文件，拿了钱自然要办事。为了更具体的分析，我们需要知道各大个人网盘的市场占比，限于成本问题，只查到了 2022 年的行业报告，虽然不是最新的，也应该能够反映一些问题，我们先看一下各家网盘的知名度：&lt;/p&gt;
&lt;p&gt;根据# 2022年中国个人网盘市场研究报告(&lt;a href=&#34;https://www.iimedia.cn/c400/84607.html&#34;&gt;https://www.iimedia.cn/c400/84607.html&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-40.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;图中的和彩云是现在的中国移动云盘。&lt;/p&gt;
&lt;p&gt;我们可以看到，从数据角度，至少在 2022 年，百度网盘仍以绝对的优势占据了榜首。因此，尽管百度网盘一直被人诟病，但是依然是大部分人心目中“网盘”这个概念的体现，因此也是分享的首选（所谓“&lt;strong&gt;不是我非得用百度网盘，而是大家都在用百度网盘&lt;/strong&gt;”）。&lt;/p&gt;
&lt;p&gt;所以，就分享资源的长期有效稳定方面考虑，百度网盘必然是最优选择，但是相应地就存在审核机制。&lt;/p&gt;
&lt;p&gt;根据&lt;a href=&#34;https://hxcy.top/541734.html&#34;&gt;这篇文章&lt;/a&gt;，&lt;strong&gt;百度网盘的审核机制其实并没有想象中那样严格&lt;/strong&gt;，对于不分享的显然违规的文件，百度网盘通常是不会管的；对于包含违规文件的分享压缩包，只要无法解密，百度网盘也是不会管的。总之，只要不能显式地定位到违规文件，百度网盘通常是不会管的。&lt;/p&gt;
&lt;p&gt;这似乎和部分人的认知不符，百度明明就天天炸链，怎么能说不管呢？&lt;/p&gt;
&lt;p&gt;根据 &lt;a href=&#34;https://bafybeiadpfp7wu6qwmyighdel3qw2eqqqacrmyuxfdwc5u4vwmhiw4mqce.ipfs.dweb.link/&#34;&gt;&lt;strong&gt;试验证据&lt;/strong&gt;&lt;/a&gt; 表明，大多数炸链的真实原因是：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;有这么一帮潜藏在各个资源站的特殊行业人群，这些人获取资源后非但不会感谢分享者，还会举报分享文件使之炸链，保证只有自己一个来源，然后再对此资源开价售卖&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;这帮人就是资源倒卖者，俗称“&lt;strong&gt;倒狗&lt;/strong&gt;”。&lt;/p&gt;
&lt;p&gt;在百度网盘一家独大的情况下，倒卖者对于百度网盘审核机制的研究也最为深入（所谓盗墓的也一定是半个考古学家），他们充分利用了百度网盘的违规机制（即达到举报阈值自动一刀切），发明了批量转存+脚本举报的技术，即先转存想要使之违规的文件，然后调用举报脚本，自动化批量创建分享链接，以大量账号池组成的举报轰炸逐个炸掉文件，对于隐写文件，则可能会先修改其后缀以破坏其伪装。&lt;/p&gt;
&lt;p&gt;倒卖者可以做到全程不下载任何文件，直接就能流水线式地在云端进行转存举报等一系列操作；倒卖者也不需要关注具体举报哪个文件，只需要源源不断地把转存后的文件放入举报池中即可，如此构建起一个简单易操作、成本又可控的举报工作流。只要每天开机运行一遍，就可以让所有举报池中的文件违规（隐写文件因为可申诉，时不时会复活，需要每天都举报）。&lt;/p&gt;
&lt;p&gt;目前对于倒卖者的举报，网盘分享方案也确实没有太好的办法，之前试验的各种外网盘（Mega、PikPak、Gofile、ModsFire、MediaFire 等）也纷纷败下阵来。外网盘的封禁政策颇为严厉，一炸链就封号（尤以 Mega 为甚，会追踪 ip、cookies 及设备信息封禁新号），不像国内网盘一般只是禁止该文件分享。出于安全角度考虑，分享还是最好选择国内网盘。&lt;/p&gt;
&lt;h3 id=&#34;IPFS-分享方案的适用场景：恶意举报&#34;&gt;IPFS 分享方案的适用场景：恶意举报&lt;/h3&gt;
&lt;p&gt;小结一下，网盘分享方案虽然在长时间维持资源有效性和可用性方面具有优势，但是在面对倒卖者时是无能为力的。但是与之相反，无法举报的 IPFS 方案在面对这个问题时就具有优势了。&lt;/p&gt;
&lt;p&gt;如资源被倒卖者盯上，在资源发出的时候可以采用 IPFS + 网盘隐写文件的办法，可以在 IPFS 有效期间保证资源的可用性，当 IPFS 失效或者不稳定以后，通常也过了这个资源的热度，此时除了倒卖者很少会有人关注。&lt;/p&gt;
&lt;p&gt;俗话说只有千日做贼没有千日防贼，倒卖者不可能无限制累积举报池的文件，迟早有一天会移除失效已久的文件，此时若有人再要资源，只需要申诉隐写文件解除违规（&lt;strong&gt;采用尝试分享的方式申诉解封最快&lt;/strong&gt;），再进行分享即可，不需要重新压缩上传。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-41.webp&#34; alt=&#34;4e3b022c952cffc89376061f9809c595.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;提示反馈成功即申诉成功，文件就解除违规了，解除违规后不急着分享，先观察一天，看会不会再次违规。&lt;/p&gt;
&lt;p&gt;一天后在文件详情中点一下申诉，如果提示“&lt;strong&gt;请勿申诉正常文件&lt;/strong&gt;”，就证明文件已经被倒卖者移出了举报池，可以分享了；如果显示“&lt;strong&gt;申诉成功&lt;/strong&gt;”则说明文件又违规了，还没有被倒卖者移出举报池。&lt;/p&gt;
&lt;p&gt;资源生效以后不要在评论区说明，以免被倒卖者注意到。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/09/04/20250904125447-42.webp&#34; alt=&#34;f0a471315c6a32ff22b5e0f0f852ed14.webp&#34;&gt;&lt;/p&gt;
&lt;p&gt;想要成功申诉需要注意隐写文件的伪装有效性问题，不要选到一些自己就是违规文件的视频。&lt;/p&gt;
&lt;p&gt;关于更具体的防炸策略，可以参考这篇文章：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;防炸教程：如何安全分享资源？&lt;/strong&gt;&lt;br&gt;
绅士仓库：&lt;a href=&#34;https://cangku.moe/archives/215860&#34;&gt;https://cangku.moe/archives/215860&lt;/a&gt;&lt;br&gt;
南+：&lt;a href=&#34;https://www.south-plus.net/read.php?tid-2437901.html&#34;&gt;https://www.south-plus.net/read.php?tid-2437901.html&lt;/a&gt;&lt;br&gt;
幻想次元：&lt;a href=&#34;https://hxcy.top/541697.html&#34;&gt;https://hxcy.top/541697.html&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;总结&#34;&gt;总结&lt;/h2&gt;
&lt;p&gt;本文详细地总结了 IPFS 作为一种去中心化文件分享方案的特点和使用方法：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;IPFS 程序操作: 详细介绍了文件上传、固定、分享 CID 和下载的步骤，以及本地文件管理方法。&lt;/li&gt;
&lt;li&gt;IPFS 托管平台：以 Crust+酸奶网盘为例，说明了如何使用托管平台来保证文件的长期可用性。&lt;/li&gt;
&lt;li&gt;IPFS 优缺点分析：IPFS 的主要优势在于其去中心化特性，不怕举报，因此适合应对倒卖者问题；缺点是可能因缺乏固定节点而导致资源失效。&lt;/li&gt;
&lt;li&gt;IPFS 与网盘对比：相比传统网盘，IPFS 在应对恶意举报方面更有优势，但在长期稳定性上略逊一筹。&lt;/li&gt;
&lt;li&gt;应用建议：文章提出了 IPFS 与网盘隐写文件结合使用的策略，以平衡安全性和长期可用性。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这里需要需要强调的是，大部分情况下，&lt;strong&gt;网盘+隐写&lt;/strong&gt;已经足够安全，如果你的分享本身就属于比较安全的资源（普通音乐、普通影视之类），不大可能被倒卖者盯上，那么此时采用隐写甚至 IPFS 就是多余的，反而会增加不必要的负担。此时采用传统的压缩包方案甚至不压缩可能更好一些。&lt;/p&gt;
&lt;p&gt;没有免费午餐定理除了告诉我们事物不存在唯一终极解以外，也告诉我们面对问题需要&lt;strong&gt;对症下药，过犹不及&lt;/strong&gt;。&lt;/p&gt;
&lt;h2 id=&#34;致谢&#34;&gt;致谢&lt;/h2&gt;
&lt;p&gt;本文中 IPFS 相关内容特别感谢 &lt;a href=&#34;https://cangku.moe/user/155378/post&#34;&gt;@yo&lt;/a&gt; &lt;a href=&#34;https://cangku.moe/user/26977/post&#34;&gt;@sandbox&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;参考&#34;&gt;参考&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;主要内容&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;[1] &lt;a href=&#34;https://rentry.org/safe_sharing&#34;&gt;&lt;strong&gt;[技巧分享] 防炸教程：如何安全分享资源？&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[2] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2348648.html&#34;&gt;&lt;strong&gt;[技巧分享] 网盘资源分享的几种安全级别、审核与举报原理 [资源防炸链解决方案倡议]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[3] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2314135.html&#34;&gt;&lt;strong&gt;[工具分享] 隐写者：把资源嵌入MP4文件的隐写工具 [资源安全分享]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[4] &lt;a href=&#34;https://bafybeiadpfp7wu6qwmyighdel3qw2eqqqacrmyuxfdwc5u4vwmhiw4mqce.ipfs.dweb.link/&#34;&gt;&lt;strong&gt;[技巧分享] 关于评论区地毯式炸链现象的一些测试及初步猜想 [资源防炸链解决方案倡议]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[5] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2359248.html&#34;&gt;&lt;strong&gt;[技巧分享] 百度网盘大号传小号分享的操作方法 [资源安全分享方案]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[6] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2357385.html&#34;&gt;&lt;strong&gt;[技巧分享] IPFS分享资源快速上手及其适用场景浅议 [资源防炸链解决方案]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[7] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2255715.html&#34;&gt;&lt;strong&gt;[技巧分享] [IPFS] 无法被举报的文件分享神器CRUST IPFS操作指南 PART.I&lt;/strong&gt;&lt;/a&gt; ( IPFS 托管平台教程)&lt;br&gt;
[8] &lt;a href=&#34;https://k51qzi5uqu5djx3hvne57dwcotpc8h76o2ygrxh05kck11j6wnhvse8jrfzf2w.ipns.dweb.link/&#34;&gt;&lt;strong&gt;IPNS 可用公共网关汇总&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;幻想次元链接&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;[1] &lt;a href=&#34;https://hxcy.top/541697.html&#34;&gt;&lt;strong&gt;[技巧分享] 防炸教程：如何安全分享资源？&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[2] &lt;a href=&#34;https://hxcy.top/542433.html&#34;&gt;&lt;strong&gt;[工具分享] 隐写者：把资源嵌入MP4文件的隐写工具&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[3] &lt;a href=&#34;https://hxcy.top/544580.html&#34;&gt;&lt;strong&gt;[技巧分享] IPFS分享资源快速上手及其适用场景浅议&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[4] &lt;a href=&#34;https://hxcy.top/542051.html&#34;&gt;&lt;strong&gt;[技巧分享] 百度网盘大号传小号分享的操作方法&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[5] &lt;a href=&#34;https://bafybeiadpfp7wu6qwmyighdel3qw2eqqqacrmyuxfdwc5u4vwmhiw4mqce.ipfs.dweb.link/&#34;&gt;&lt;strong&gt;[技巧分享] 关于评论区地毯式炸链现象的一些测试及初步猜想&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[6] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2348648.html&#34;&gt;&lt;strong&gt;[技巧分享] 网盘资源分享的几种安全级别、审核与举报原理&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[7] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2255715.html&#34;&gt;&lt;strong&gt;[技巧分享] [IPFS] 无法被举报的文件分享神器CRUST IPFS操作指南 PART.I&lt;/strong&gt;&lt;/a&gt; ( IPFS 托管平台教程)&lt;br&gt;
&lt;a href=&#34;https://hxcy.top/541734.html&#34;&gt;[8] 百度网盘应该如何开车评论区传火教程 2.0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;延伸阅读&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;[X1] &lt;a href=&#34;https://cangku.moe/archives/199992&#34;&gt;[技术分享] 如何在.mkv格式视频里夹带隐藏文件，附带mkvtoolnix，MkvEdit和gMKVExtractGUI工具&lt;/a&gt;&lt;br&gt;
[X2] &lt;a href=&#34;https://cangku.moe/archives/186292&#34;&gt;[杂谈] 给新司机的一个简单的科普&lt;/a&gt; (笔者注：此文是关于安全分享的科普)&lt;br&gt;
[X3] &lt;a href=&#34;https://cangku.moe/archives/212530&#34;&gt;&lt;strong&gt;[技巧分享] IPFS分享资源快速上手及其适用场景浅议 [资源防炸链解决方案]&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[X4] &lt;a href=&#34;https://cangku.moe/archives/212031&#34;&gt;[技巧] 利用网盘离线下载分享规避审查&lt;/a&gt;&lt;br&gt;
[X5] &lt;a href=&#34;https://cangku.moe/archives/209596&#34;&gt;[技巧分享] [自建网盘] 自建网盘cloudreve+离线下载&lt;/a&gt;&lt;br&gt;
[X6] &lt;a href=&#34;https://cangku.moe/archives/178593&#34;&gt;[高阶文章] 关于新时代文件分享机制的思考&lt;/a&gt; (笔者注：此文介绍了除网盘外的其他分享方案)&lt;br&gt;
[X7] &lt;a href=&#34;https://cangku.moe/archives/204982&#34;&gt;[技巧分享] 图种的制作与使用&lt;/a&gt;&lt;br&gt;
[X8] &lt;a href=&#34;https://cangku.moe/archives/179329&#34;&gt;[技巧分享] 防炸教程&lt;/a&gt; (笔者注：本文介绍了网盘常用的分享方案，不过作者有可能要吃电脑屏幕了)&lt;br&gt;
[X9] &lt;a href=&#34;https://cangku.moe/archives/92314&#34;&gt;[教程] BitTorrent (种子文件) 扫盲 [绅士仓库 tracker 更新] [2020 Rev]&lt;/a&gt; (笔者注：本文是磁力做种的教程)&lt;br&gt;
[X10] &lt;a href=&#34;https://cangku.moe/archives/212812&#34;&gt;&lt;strong&gt;[技巧分享] [IPFS] 无法被举报的文件分享神器CRUST IPFS操作指南 PART.I&lt;/strong&gt;&lt;/a&gt; ( IPFS 托管平台教程)&lt;br&gt;
[X11] &lt;a href=&#34;https://cangku.moe/archives/178107&#34;&gt;关于百度近日封号的相关措施&lt;/a&gt; (此文也是秒传时代的开端)&lt;br&gt;
[X12] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-1978508.html&#34;&gt;[南+] 本坛还是有牛马用户啊，低能儿请远离互联网好吗？一口一个敬语问我要资源下载了之后反手就去微软举报，你咋不去网信部举报？说不定给你颁一个好市民奖&lt;/a&gt;&lt;br&gt;
[X13] &lt;a href=&#34;https://www.south-plus.net/read.php?tid-2203531.html&#34;&gt;[南+] 看看单纯的举报行为会对百度网盘资源有多大的影响&lt;/a&gt;&lt;br&gt;
[X14] &lt;a href=&#34;https://www.pixiv.net/novel/show.php?id=23561589&#34;&gt;&lt;strong&gt;[Pixiv] 一个网警的心法教学-P站写色文发黄图到底安不安全【全网最全最细致】&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
[X15] &lt;a href=&#34;https://cangku.moe/archives/213088&#34;&gt;[工具分享] IPFS分享助手：IPFS资源分享一站式解决方案 [资源防炸链解决方案]&lt;/a&gt;&lt;br&gt;
[X16] &lt;a href=&#34;https://cangku.moe/archives/214632&#34;&gt;[工具分享] [油猴脚本] 自动抓取 IPFS CID-文件名-下载链接的辅助脚本&lt;/a&gt;&lt;br&gt;
[X17] &lt;a href=&#34;https://cangku.moe/archives/214947&#34;&gt;[技巧分享] 把IPFS当作网盘来用-IPFS进阶教程 [资源安全分享解决方案]&lt;/a&gt;&lt;br&gt;
[X17] &lt;a href=&#34;https://bafybeianyrlu2hxgbgdtrzqwbnzjwcgnnvguq3hupdysi626nxu4ptjwwu.ipfs.dweb.link&#34;&gt;[网盘防炸教程]新的一年网盘应该如何开车&lt;/a&gt;&lt;br&gt;
[X18] [[杂谈] &lt;a href=&#34;https://cangku.moe/archives/220203&#34;&gt;通过隐写+大号传小号打造网盘分享防御体系&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;编辑整理 Form &lt;a href=&#34;https://github.com/cenglin123/IPFS-tutorial&#34;&gt;cenglin123/IPFS-tutorial&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="docker" />
        <category term="tools" />
        <category term="ipfs" />
        <updated>2025-09-04T06:09:12.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/3194c5b3/</id>
        <title>windows系统空间清理与速度优化</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/3194c5b3/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;windows 设计存在天生缺陷，注册表越用越慢，C盘空间越来越小，运行速度越来越慢，空间不够怎么办，本文总结记录一些 windows 空间清理，系统运行速度优化方法。清理系统垃圾，临时文件，老旧驱动，各种无用垃圾等等，给你的C盘空间腾出大量空间，大大加快系统运行速度！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217174040.webp&#34; alt=&#34;windows&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;日常使用注意&#34;&gt;日常使用注意&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;软件安装目录选择D盘，而不要选择默认的C盘&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;系统分区时，C盘分区默认大于256GB，最好512GB以上。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SSD 硬盘分区其实2个分区就够了，C 盘不要分区太小，对于ssd 来说，C盘越小，单个SSD底层块写入数据越大，C盘损坏越快！反而C盘分区越大，SSD 寿命也会越长！&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;经常清理系统垃圾，方法参考本文后面 “系统垃圾清理” 章节&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;SSD 4k 对齐 等等&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;如果有更好的方法，可以文章下面留言&lt;/p&gt;
&lt;h2 id=&#34;系统文件夹转移&#34;&gt;系统文件夹转移&lt;/h2&gt;
&lt;p&gt;Windows 10的用户文件夹迁移到非系统盘 一般有两种方法 （假设用户文件夹由 C:\Users 迁移到 D:\Users）&lt;/p&gt;
&lt;h3 id=&#34;方法一：创建链接方式&#34;&gt;方法一：创建链接方式&lt;/h3&gt;
&lt;p&gt;1、在PE环境下 &lt;code&gt;xcopy c:\Users d:\Users /e /v /i /g /h /k /o /x /b /c&lt;/code&gt;&lt;br&gt;
2、重命名原系统用户文件夹 &lt;code&gt;ren c:\Users oldUsers&lt;/code&gt;&lt;br&gt;
3、通过符号链接，在 C 盘引用 D 盘的的用户文件 &lt;code&gt;mklink /D c:\Users d:\Users&lt;/code&gt;&lt;br&gt;
4、重启进入系统，一切正常后可以删除原系统用户文件夹 oldUsers，也可以在 PE 下删除。&lt;/p&gt;
&lt;p&gt;这种方法操作简单，但我使用了一段时间，发现部分便携版软件也使用了 mklink 方式来实现便携化（&lt;a href=&#34;http://xn--portableappk-n25vw30r.com&#34;&gt;比如portableappk.com&lt;/a&gt; 的部分便携版软件，比如微信、QQ、爱奇艺等），这样就产生冲突了，我遇到的结果是桌面应用不能打开，无法登录系统。&lt;/p&gt;
&lt;p&gt;所以我推荐方法用&lt;strong&gt;预应答文件&lt;/strong&gt;来实现，操作最好是全新安装系统时进行。&lt;/p&gt;
&lt;h3 id=&#34;方法二：预应答文件方式&#34;&gt;方法二：预应答文件方式&lt;/h3&gt;
&lt;p&gt;1、新建 unattend.xml&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;?xml version&amp;#x3D;&amp;quot;1.0&amp;quot; encoding&amp;#x3D;&amp;quot;utf-8&amp;quot;?&amp;gt;
&amp;lt;unattend xmlns&amp;#x3D;&amp;quot;urn:schemas-microsoft-com:unattend&amp;quot;&amp;gt;
  &amp;lt;settings pass&amp;#x3D;&amp;quot;oobeSystem&amp;quot;&amp;gt;
    &amp;lt;component name&amp;#x3D;&amp;quot;Microsoft-Windows-Shell-Setup&amp;quot; processorArchitecture&amp;#x3D;&amp;quot;amd64&amp;quot; publicKeyToken&amp;#x3D;&amp;quot;31bf3856ad364e35&amp;quot; language&amp;#x3D;&amp;quot;neutral&amp;quot; versionScope&amp;#x3D;&amp;quot;nonSxS&amp;quot; xmlns:wcm&amp;#x3D;&amp;quot;http:&amp;#x2F;&amp;#x2F;schemas.microsoft.com&amp;#x2F;WMIConfig&amp;#x2F;2002&amp;#x2F;State&amp;quot; xmlns:xsi&amp;#x3D;&amp;quot;http:&amp;#x2F;&amp;#x2F;www.w3.org&amp;#x2F;2001&amp;#x2F;XMLSchema-instance&amp;quot;&amp;gt;
      &amp;lt;FolderLocations&amp;gt;
        &amp;lt;ProfilesDirectory&amp;gt;D:\Users&amp;lt;&amp;#x2F;ProfilesDirectory&amp;gt;
      &amp;lt;&amp;#x2F;FolderLocations&amp;gt;
    &amp;lt;&amp;#x2F;component&amp;gt;
  &amp;lt;&amp;#x2F;settings&amp;gt;
&amp;lt;&amp;#x2F;unattend&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;2、PE下用 WinNT Setup 安装系统，勾选“无人值守安装”，选择 unattend.xml。&lt;br&gt;
3、等系统安装完毕，用户文件夹就自动迁移到 D:\Users 了。这个方法安全可靠，兼容性更好。&lt;/p&gt;
&lt;h3 id=&#34;方法三：win11-文件夹属性&#34;&gt;方法三：win11 文件夹属性&lt;/h3&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214.webp&#34; alt=&#34;Win11 文件夹&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-1.webp&#34; alt=&#34;文件夹属性&#34;&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id=&#34;系统垃圾清理&#34;&gt;系统垃圾清理&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;这个有很多现成的工具，做得都很不错，直接使用即可~&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;360安全卫士清理&#34;&gt;360安全卫士清理&lt;/h3&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;默认扫描就包含垃圾清理&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;注意360不少操作要求你下载360全家桶，会严重拖慢系统速度，还有弹窗广告！&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;火绒垃圾清理&#34;&gt;火绒垃圾清理&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;替代360的好选择，够用，轻量，快速！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-2.webp&#34; alt=&#34;火绒工具&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-3.webp&#34; alt=&#34;火绒垃圾清理&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;清理-winsxs-文件夹&#34;&gt;清理 winsxs 文件夹&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;长期使用之后，这个 winsxs 文件夹会变得很大，需要优化清理&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;winsxs文件夹是Windows系统中非常重要的一个文件夹,它存储了系统需要的各种组件和服务包信息。&lt;/p&gt;
&lt;p&gt;winsxs文件夹位置在&lt;code&gt;C:\Windows\winsxs&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;winsxs文件夹里包含许多Windows系统运行必须的文件,所以普通用户不应该删除这个文件夹的任何内容,否则可能会导致系统崩溃或启动问题。&lt;/p&gt;
&lt;p&gt;不过,随着时间推移,winsxs文件夹会越来越大,占用很多存储空间。&lt;/p&gt;
&lt;p&gt;所以,用户有时想清理一下它,腾出些存储空间使用。&lt;/p&gt;
&lt;p&gt;如果需要清理winsxs文件夹,可以这么做:&lt;/p&gt;
&lt;h3 id=&#34;方案一：&#34;&gt;方案一：&lt;/h3&gt;
&lt;p&gt;使用Disk Cleanup工具,选择“清理系统文件”,然后选中“清理服务包备份和更新”选项,删除旧的Windows更新文件,这能减小winsxs文件夹的大小。&lt;/p&gt;
&lt;p&gt;这是比较安全的清理方式,但是只能清理部分空间。&lt;/p&gt;
&lt;p&gt;Disk Cleanup工具是Windows自带的工具,不需要单独下载安装。&lt;/p&gt;
&lt;p&gt;在Windows里,可以这几种方式找到它:&lt;/p&gt;
&lt;p&gt;1 开始菜单搜索Disk Cleanup,找到图标打开;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-4.webp&#34; alt=&#34;Disk Cleanup&#34;&gt;&lt;/p&gt;
&lt;p&gt;控制面板选“系统和安全”,点击“释放磁盘空间”;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-5.webp&#34; alt=&#34;系统和安全&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-6.webp&#34; alt=&#34;释放磁盘空间&#34;&gt;&lt;/p&gt;
&lt;p&gt;文件资源管理器右键点击要清理的磁盘,选择“属性”,然后点击“磁盘清理”;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-7.webp&#34; alt=&#34;硬盘属性&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-8.webp&#34; alt=&#34;磁盘清理&#34;&gt;&lt;/p&gt;
&lt;p&gt;在运行窗口输入cleanmgr.exe命令直接打开Disk Cleanup工具。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-9.webp&#34; alt=&#34;cleanmgr.exe&#34;&gt;&lt;/p&gt;
&lt;p&gt;Disk Cleanup工具由Microsoft提供,使用完全免费。&lt;/p&gt;
&lt;p&gt;磁盘清理工具启动后，选择C盘，点击确定。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-10.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;分析中。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-11.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;分析完成，可以看见，我的windows更新清理，占用了3.22GB。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-12.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;勾选windows更新清理，点击确定，就开始清理了。清理完成，重启系统就可以了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-13.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;方案二：&#34;&gt;方案二：&lt;/h3&gt;
&lt;p&gt;使用Dism命令,这是Windows的命令行工具,可以清理winsxs文件夹过期或损坏的系统文件。具体命令是:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Dism.exe /online /Cleanup-Image /StartComponentCleanup&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;运行后会扫描winsxs文件夹并删除一些过期文件,减小文件夹大小。这种方法比较安全,但清理效果有限。&lt;/p&gt;
&lt;p&gt;操作步骤：&lt;/p&gt;
&lt;p&gt;1 打开windows命令行工具，在开始菜单搜索框输入cmd，然后以管理员身份运行。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-14.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;2 在命令行窗口，输入命令&lt;/p&gt;
&lt;p&gt;Dism.exe /online /Cleanup-Image /StartComponentCleanup&lt;/p&gt;
&lt;p&gt;回车。命令执行完成，重启电脑，就可以了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-15.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;方案三：&#34;&gt;方案三：&lt;/h3&gt;
&lt;p&gt;使用sfc /scannow命令, 这个命令会检查winsxs文件夹的系统文件问题并试图修复。在修复过程中,会删除一些损坏或无效的文件,达到稍微清理winsxs文件夹的目的。但主要目的是修复而不是清理,所以清理效果不大。&lt;/p&gt;
&lt;p&gt;操作步骤：&lt;/p&gt;
&lt;p&gt;1 打开windows命令行工具，在开始菜单搜索框输入cmd，然后以管理员身份运行。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-16.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;2 在命令行里输入命令&lt;/p&gt;
&lt;p&gt;sfc /scannow&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-17.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;回车。命令执行完成，重启电脑，就可以了。&lt;/p&gt;
&lt;p&gt;除此之外,Windows本身没有提供直接清空或删除winsxs文件夹的选项,因为这会造成严重问题。&lt;/p&gt;
&lt;p&gt;如果真的需要大规模清理或删除winsxs文件夹释放更多存储空间,只能使用第三方工具。&lt;/p&gt;
&lt;p&gt;但对普通用户不推荐,以防出现系统问题。&lt;/p&gt;
&lt;p&gt;所以,总体来说,对普通用户而言,使用Windows自带的Disk Cleanup工具做有限清理是最安全可靠的选择。&lt;/p&gt;
&lt;p&gt;其他命令也可以试试,但都无法彻底或大规模清理winsxs文件夹。&lt;/p&gt;
&lt;p&gt;如果有这样的需求,使用第三方工具前需要非常小心,并事先备份系统。&lt;/p&gt;
&lt;h2 id=&#34;老旧驱动清理&#34;&gt;老旧驱动清理&lt;/h2&gt;
&lt;h3 id=&#34;DriverStoreExplorer&#34;&gt;DriverStoreExplorer&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/lostindark/DriverStoreExplorer/releases&#34;&gt;下载&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-18.png&#34; alt=&#34;DriverStoreExplorer&#34;&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id=&#34;DISM&#34;&gt;DISM++&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/LiveMirror/dism&#34;&gt;LiveMirror/dism: Dism++: the best and most powerful utility. via: http://www.chuyu.me/zh-Hans/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/Chuyu-Team/Dism-Multi-language&#34;&gt;Chuyu-Team/Dism-Multi-language: Dism++ Multi-language Support &amp;amp; BUG Report&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/12/17/20241217173214-19.webp&#34; alt=&#34;DISM++&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;空间占用扫描&#34;&gt;空间占用扫描&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/redtrillix/SpaceSniffer&#34;&gt;spacesniffer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sourceforge.net/projects/spacesniffer/&#34;&gt;SpaceSniffer download | SourceForge.net&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;SpaceSniffer 是一款适用于 Windows 的免费软件磁盘空间分析器，它利用树状图概念来查看当前磁盘使用情况。&lt;/p&gt;
&lt;p&gt;图形化面积表示占用空间大小，一目了然，很好用！&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/02/19/20250219182851.webp&#34; alt=&#34;spacesniffer 演示&#34;&gt;&lt;/p&gt;
&lt;p&gt;网上有汉化版本&lt;/p&gt;
&lt;h2 id=&#34;参考-致谢&#34;&gt;参考&amp;amp;致谢&lt;/h2&gt;
&lt;p&gt;…&lt;/p&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="windows" />
        <category term="垃圾清理" />
        <category term="速度优化" />
        <updated>2024-12-17T09:31:24.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/c17af2e6/</id>
        <title>如何安装OfficeLTSC2021并KMS破解激活教程</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/c17af2e6/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;office功能强大，是日常办公必备工具！其激活和破解其实可以很简单，使用KMS激活，纯命令行激活，不需要破解工具，没有中毒风险！如何下载office 并激活，自建 KMS 服务器本文全介绍。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704210915.webp&#34; alt=&#34;office&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;背景&#34;&gt;背景&lt;/h2&gt;
&lt;h3 id=&#34;office零售版和批量授权版区别&#34;&gt;office零售版和批量授权版区别&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;零售版（RTL Edition）&lt;/strong&gt; 指的是官方出售的版本，只能激活一台电脑！享受微软售后技术服务！Retail（零售版也称消费者版，32和64位共用安装包，要转换才能KMS激活）&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;批量授权版（VOL Edition）&lt;/strong&gt; 指的是针对企业客户的大批量采购的版本，可用MARK密钥永久激活！（批量版也称商业版或大客户批量授权版，缩写VL或VOL）&lt;/p&gt;
&lt;p&gt;﹂适用企业客户批量许可部署的版本，无需转换可以通过使用KMS激活授权﹂安装可以自定义组件和安装位置，无需第三方部署工具&lt;/p&gt;
&lt;p&gt;简单的说，零售版用KEY激活后，如果微软不封，可以一直使用。（你有正版KEY不用担心这个问题）&lt;/p&gt;
&lt;p&gt;批量授权版(也称大客户版，缩写VOL或VL)可以在网上找MARK密钥激活，一旦激活成功，不怕被封；也可以用KMS进行180天激活。&lt;/p&gt;
&lt;p&gt;这两个版本功能上并无区别，只是激活的方式不一样。&lt;/p&gt;
&lt;h3 id=&#34;新版变化&#34;&gt;&lt;strong&gt;新版变化&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Office LTSC 2021 和 Office 2021 的更新历史记录 | Microsoft Docs&lt;br&gt;
&lt;a href=&#34;https://www.423down.com/go.php?url=aHR0cHM6Ly9kb2NzLm1pY3Jvc29mdC5jb20vZW4tdXMvb2ZmaWNldXBkYXRlcy91cGRhdGUtaGlzdG9yeS1vZmZpY2UtMjAyMQ==&#34;&gt;https://docs.microsoft.com/en-us/officeupdates/update-history-office-2021&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;安装文件下载地址&#34;&gt;安装文件下载地址&lt;/h2&gt;
&lt;h3 id=&#34;官方下载&#34;&gt;官方下载&lt;/h3&gt;
&lt;h2 id=&#34;如何下载和安装-Office-LTSC-2021&#34;&gt;如何下载和安装 Office LTSC 2021&lt;/h2&gt;
&lt;h3 id=&#34;Office-部署工具&#34;&gt;Office 部署工具&lt;/h3&gt;
&lt;p&gt;对于 Windows，Office LTSC 2021 是使用即点即用安装技术安装的。Microsoft 不提供安装程序下载;相反，计算机管理员需要使用 Office 部署工具 （ODT） 来安装 Office LTSC 2021。操作方法如下：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://learn.microsoft.com/en-us/deployoffice/ltsc2021/deploy&#34;&gt;官方教程&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;技巧：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;提示：在安装 Office LTSC 2021 之前，您需要卸载 Office 的现有版本。&lt;/p&gt;
&lt;p&gt;步骤1：前往&lt;a href=&#34;https://www.microsoft.com/en-us/download/details.aspx?id=49117&#34;&gt;Microsoft官网&lt;/a&gt;下载Office部署工具。&lt;/p&gt;
&lt;p&gt;第 2 步：运行 Office 部署工具 exe 文件进行安装。然后，吃午饭并选择一个文件夹来存储文件。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704204232-1.webp&#34; alt=&#34;choose a location&#34;&gt;&lt;/p&gt;
&lt;p&gt;步骤3： 然后，您可以在该位置看到这些文件。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704204232-2.webp&#34; alt=&#34;Office LTSC 2021 configuration files&#34;&gt;&lt;/p&gt;
&lt;p&gt;第4步： 现在，您需要创建&lt;code&gt;configuration.xml&lt;/code&gt;文件。复制**“Configuration-Office2021Enterprise”文件**，重命名为&lt;code&gt;configuration.xml&lt;/code&gt; 选择“&lt;strong&gt;使用记事本打开&lt;/strong&gt;”。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;configuration.xml&lt;/code&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;!-- Office 2021 enterprise client configuration file sample. To be used for Office 2021 
     enterprise volume licensed products only, including Office 2021 Professional Plus,
     Visio 2021, and Project 2021.

     Do not use this sample to install Office 365 products.

     For detailed information regarding configuration options visit: http:&amp;#x2F;&amp;#x2F;aka.ms&amp;#x2F;ODT. 
     To use the configuration file be sure to remove the comments

     The following sample allows you to download and install Office 2021 Professional Plus,
     Visio 2021 Professional, and Project 2021 Professional directly from the Office CDN.

     This configuration file will remove all other Click-to-Run products in order to avoid
     product conflicts and ensure successful setup.
 --&amp;gt;



&amp;lt;Configuration&amp;gt;

  &amp;lt;Add OfficeClientEdition&amp;#x3D;&amp;quot;64&amp;quot; Channel&amp;#x3D;&amp;quot;PerpetualVL2021&amp;quot;&amp;gt;
    &amp;lt;Product ID&amp;#x3D;&amp;quot;ProPlus2021Volume&amp;quot;&amp;gt;
      &amp;lt;Language ID&amp;#x3D;&amp;quot;zh-CN&amp;quot; &amp;#x2F;&amp;gt;
	  &amp;lt;Language ID&amp;#x3D;&amp;quot;en-us&amp;quot; &amp;#x2F;&amp;gt;
      &amp;lt;ExcludeApp ID&amp;#x3D;&amp;quot;Lync&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;Product&amp;gt;
    &amp;lt;Product ID&amp;#x3D;&amp;quot;VisioPro2021Volume&amp;quot;&amp;gt;
      &amp;lt;Language ID&amp;#x3D;&amp;quot;zh-CN&amp;quot; &amp;#x2F;&amp;gt;
	  &amp;lt;Language ID&amp;#x3D;&amp;quot;en-us&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;Product&amp;gt;
    &amp;lt;Product ID&amp;#x3D;&amp;quot;ProjectPro2021Volume&amp;quot;&amp;gt;
      &amp;lt;Language ID&amp;#x3D;&amp;quot;zh-CN&amp;quot; &amp;#x2F;&amp;gt;
	  &amp;lt;Language ID&amp;#x3D;&amp;quot;en-us&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;Product&amp;gt;
  &amp;lt;&amp;#x2F;Add&amp;gt;

  &amp;lt;Remove All&amp;#x3D;&amp;quot;True&amp;quot; &amp;#x2F;&amp;gt;

  &amp;lt;!--  &amp;lt;RemoveMSI All&amp;#x3D;&amp;quot;True&amp;quot; &amp;#x2F;&amp;gt; --&amp;gt;

  &amp;lt;!--  &amp;lt;Display Level&amp;#x3D;&amp;quot;None&amp;quot; AcceptEULA&amp;#x3D;&amp;quot;TRUE&amp;quot; &amp;#x2F;&amp;gt;  --&amp;gt;

  &amp;lt;!--  &amp;lt;Property Name&amp;#x3D;&amp;quot;AUTOACTIVATE&amp;quot; Value&amp;#x3D;&amp;quot;1&amp;quot; &amp;#x2F;&amp;gt;  --&amp;gt;

&amp;lt;&amp;#x2F;Configuration&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;步骤5：在&lt;strong&gt;搜索&lt;/strong&gt;框中键入&lt;strong&gt;cmd&lt;/strong&gt;，然后选择&lt;strong&gt;以管理员身份运行&lt;/strong&gt;。执行以下命令：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;.&amp;#x2F;setup.exe &amp;#x2F;configure .\configuration.xml&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704204232-3.webp&#34; alt=&#34;office&#34;&gt;&lt;/p&gt;
&lt;p&gt;步骤6：接下来，出现安装进度窗口。您只需要按照屏幕上的说明完成安装即可。&lt;/p&gt;
&lt;h3 id=&#34;第三方下载&#34;&gt;第三方下载&lt;/h3&gt;
&lt;p&gt;如果已经安装office2021可以直接跳到步骤二进行KMS激活&lt;/p&gt;
&lt;p&gt;Office_Pro_Plus_2021_LTSC+Project+Visio_x64_zh_CN_VL_2021-10.iso&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://link.orcy.net.cn/?url=https://alumnialbany-my.sharepoint.com/:f:/g/personal/mlj_alumni_albany_edu/Ej_Pxw_VUKFJmDe-Dgsn43EBg4QStSii4ajw66MinvEYyg?e=fYgjXF&#34;&gt;https://alumnialbany-my.sharepoint.com/:f:/g/personal/mlj_alumni_albany_edu/Ej_Pxw_VUKFJmDe-Dgsn43EBg4QStSii4ajw66MinvEYyg?e=fYgjXF&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;vl版office2021，&lt;code&gt;标准版&lt;/code&gt;和&lt;code&gt;专业增强版&lt;/code&gt;均可通过KMS激活&lt;/li&gt;
&lt;li&gt;OInstall.exe可能会被Windows安全中心误报，信任即可。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;Office2021-ISO-下载地址合集&#34;&gt;Office2021 ISO 下载地址合集&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;说明&lt;/strong&gt;：仅支持Win10/11系统，img镜像Win10/11下直接装载打开即可。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;一、专业增强版（强烈推荐）：&#34;&gt;一、专业增强版（强烈推荐）：&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProPlus2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProPlus2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;二、专业版：&#34;&gt;二、专业版：&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Professional2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Professional2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;三、家庭学生版：&#34;&gt;三、家庭学生版：&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeStudent2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeStudent2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;四、家庭企业版：&#34;&gt;四、家庭企业版：&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeBusiness2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/HomeBusiness2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;五、独立版（不推荐）：&#34;&gt;五、独立版（不推荐）：&lt;/h4&gt;
&lt;p&gt;&lt;strong&gt;Word&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Word2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Word2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Excel&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Excel2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Excel2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;PowerPoint&lt;/strong&gt;：&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/PowerPoint2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/PowerPoint2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Outlook&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Outlook2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Outlook2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Access&lt;/strong&gt;：&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Access2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Access2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Publisher&lt;/strong&gt;：&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Publisher2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/Publisher2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Project标准版&lt;/strong&gt;：&lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProjectStd2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProjectStd2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Project专业版&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProjectPro2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/ProjectPro2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Visio标准版&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/VisioStd2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/VisioStd2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Visio专业版&lt;/strong&gt;： &lt;a href=&#34;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/VisioPro2021Retail.img&#34;&gt;http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d60/media/zh-cn/VisioPro2021Retail.img&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;KMS激活-Office&#34;&gt;KMS激活 Office&lt;/h2&gt;
&lt;p&gt;以管理员身份运行CMD或者Powershell，输入以下命令&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;cd  &amp;quot;C:\Program Files\Microsoft Office\Office16&amp;quot;

# kms with port
cscript ospp.vbs &amp;#x2F;sethst:kms.0t.net.cn
cscript ospp.vbs &amp;#x2F;setprt:1688
cscript ospp.vbs &amp;#x2F;act

# kms
cscript ospp.vbs &amp;#x2F;sethst:win.kms.pub
cscript ospp.vbs &amp;#x2F;act&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;*32位office2021安装位置 “C:\Program Files (x86)\Microsoft Office\Office16”&lt;/p&gt;
&lt;p&gt;等待激活完成即可！&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704204232-4.webp&#34; alt=&#34;Office2021安装文件下载和KMS激活&#34;&gt;&lt;/p&gt;
&lt;p&gt;*如激活失败，请确认&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;是否以管理员身份运行的cmd&lt;/li&gt;
&lt;li&gt;office2021的版本是否是vl版，如果是零售版转换到VL版&lt;/li&gt;
&lt;li&gt;office365不支持KMS激活&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;office2021零售版转VL版命令&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;以管理员身份运行cmd，依次执行以下命令&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;cd  &amp;quot;C:\Program Files\Microsoft Office\Office16&amp;quot;
for &amp;#x2F;f %x in (&amp;#39;dir &amp;#x2F;b ..\root\Licenses16\ProPlus2021VL_KMS*.xrm-ms&amp;#39;) do cscript ospp.vbs &amp;#x2F;inslic:&amp;quot;..\root\Licenses16\%x&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;32位office2021安装位置 “C:\Program Files (x86)\Microsoft Office\Office16”&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704204232.webp&#34; alt=&#34;Office2021安装文件下载和KMS激活&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;KMS-激活-windows&#34;&gt;KMS 激活 windows&lt;/h2&gt;
&lt;h5 id=&#34;激活-Windows&#34;&gt;激活 Windows&lt;/h5&gt;
&lt;p&gt;如果你的 Windows 是 VL 版本，那么只要在管理员权限的 cmd 或者 powershell 中执行下面两个命令就可以了。&lt;/p&gt;
&lt;p&gt;执行完第一个命令后要等弹出提示窗，期间电脑必须联网。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;slmgr &amp;#x2F;skms win.kms.pub
slmgr &amp;#x2F;ato&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;如果不是 VL 版本的，那么需要更换密钥获取你对应版本的 KEY，操作如下：&lt;/p&gt;
&lt;p&gt;运行以下命令查看系统版本：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;wmic os get caption&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;在&lt;a href=&#34;#Windows-VL-%E5%AF%86%E9%92%A5%E5%AF%B9%E7%85%A7%E8%A1%A8&#34;&gt;文末找到对应的 key&lt;/a&gt;，在管理员权限的 cmd 或者 powershell 中执行下面命令安装 key：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;slmgr &amp;#x2F;ipk xxxxx-xxxxx-xxxxx-xxxxx&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;然后跟上面说的一样设置 kms 服务器地址，激活.&lt;/p&gt;
&lt;p&gt;*&lt;strong&gt;例如：新装windows10企业版之后如何激活*&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;如果你是新装的或者已经安装好了windows10企业版那么只需要复制下面命令在直接管理员权限的cmd或者powershell中执行即可。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;slmgr.vbs &amp;#x2F;upk
slmgr &amp;#x2F;ipk NPPR9-FWDCX-D2C8J-H872K-2YT43
slmgr &amp;#x2F;skms win.kms.pub
slmgr &amp;#x2F;ato&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;Win11-LTSC-2024-下载与KMS-激活&#34;&gt;Win11 LTSC 2024 下载与KMS 激活&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Win11企业版 2024 长期服务版 (Windows 11 IoT Enterprise LTSC 2024)&lt;/strong&gt; 提供长达 10 年的支持服务，支持至 2034 年。它可视为官方推出的精简版 Win11，系统稳定流畅，对电脑硬件的要求较低，适合性能有限的设备。用户可以通过数字权利实现永久激活。&lt;br&gt;
LTSC 版本去除了应用商店、微软小娜（Cortana）、OneDrive，并且 Windows 更新提供了更多高级设置，用户可选择性安装系统更新，极大提升了系统的可控性和定制化。&lt;/p&gt;
&lt;p&gt;Microsoft Windows 11 Enterprise LTSC 2024 官方简体中文正式版ISO镜像下载地址&lt;/p&gt;
&lt;p&gt;zh-cn_windows_11_enterprise_ltsc_2024_x64_dvd_cff9cd2d.iso（4.92G）SHA: 2CB21649590C8CF770CD93556596DFF4FD800F24D267A9BE9D9CE0EE9E03F5AC&lt;/p&gt;
&lt;p&gt;【&lt;a href=&#34;https://drive.massgrave.dev/zh-cn_windows_11_enterprise_ltsc_2024_x64_dvd_cff9cd2d.iso&#34;&gt;&lt;strong&gt;点击下载&lt;/strong&gt;&lt;/a&gt;】或 【&lt;strong&gt;&lt;a href=&#34;magnet:?xt=urn:btih:b84e74c1dbcc88a02c5b24a6f84383f353a2e1dd&amp;amp;dn=zh-cn_windows_11_enterprise_ltsc_2024_x64_dvd_cff9cd2d.iso&amp;amp;xl=5287520256&#34;&gt;BT磁力下载&lt;/a&gt;&lt;/strong&gt;】&lt;/p&gt;
&lt;p&gt;Microsoft Windows 11 Enterprise LTSC 2024 英文版官方下载 【&lt;strong&gt;&lt;a href=&#34;magnet:?xt=urn:btih:7352bd2db48c3381dffa783763dc75aa4a6f1cff&amp;amp;dn=en-us_windows_11_iot_enterprise_ltsc_2024_x64_dvd_f6b14814.iso&amp;amp;xl=5144817664&#34;&gt;点击下载&lt;/a&gt;&lt;/strong&gt; 】&lt;/p&gt;
&lt;h2 id=&#34;制作U盘系统安装盘：&#34;&gt;制作U盘系统安装盘：&lt;/h2&gt;
&lt;p&gt;1、Rufus 【&lt;a href=&#34;https://rufus.ie/zh/&#34;&gt;官方下载&lt;/a&gt;】&lt;/p&gt;
&lt;p&gt;2、Ventoy 【&lt;a href=&#34;https://www.ventoy.net/cn/download.html&#34;&gt;官方下载&lt;/a&gt;】&lt;/p&gt;
&lt;p&gt;跳过TPM2 验证 在安装命令后面添加 /product server&lt;/p&gt;
&lt;h3 id=&#34;Windows-11-2024-LTSC-长期服务版-KMS-官方密钥获取：&#34;&gt;Windows 11 2024 LTSC 长期服务版 KMS 官方密钥获取：&lt;/h3&gt;
&lt;p&gt;【&lt;strong&gt;&lt;a href=&#34;https://learn.microsoft.com/en-us/windows-server/get-started/kms-client-activation-keys?tabs=server2025%2Cwindows1110ltsc%2Cversion1803%2Cwindows81&#34;&gt;点击前往&lt;/a&gt;&lt;/strong&gt;】&lt;/p&gt;
&lt;p&gt;激活命令：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-cmd&#34; data-language=&#34;cmd&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-cmd&#34;&gt;slmgr -ipk 这里填写视频里演示的密钥
slmgr -ipk M7XTQ-FN8P6-TTKYV-9D4CC-J462D

slmgr -skms kms.03k.org 
slmgr -skms win.kms.pub

slmgr -ato 
slmgr -dlv&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;安装后可以进一步精简系统,使用DISM快速禁用或启用保留空间：&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;禁用系统保留空间&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;DISM.exe &amp;#x2F;Online &amp;#x2F;Set-ReservedStorageState &amp;#x2F;State:Disabled&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;KMS-服务器列表&#34;&gt;KMS 服务器列表&lt;/h2&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-javascript&#34; data-language=&#34;javascript&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-javascript&#34;&gt;kms.03k.org
kms.chinancce.com
kms.luody.info
kms.lotro.cc
kms.luochenzhimu.com
kms8.MSGuides.com
kms9.MSGuides.com&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.kms.pub/rank.html&#34;&gt;KMS 列表&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.kms.pub/check.html&#34;&gt;kms可用性检测网址&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;Windows-VL-密钥对照表&#34;&gt;Windows VL 密钥对照表&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;以下内容来自微软官方公开的序列号，请放心使用&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h4 id=&#34;点击查询微软官方公开序列号&#34;&gt;&lt;a href=&#34;https://docs.microsoft.com/zh-cn/windows-server/get-started/kmsclientkeys&#34;&gt;点击查询微软官方公开序列号&lt;/a&gt;&lt;/h4&gt;
&lt;h3 id=&#34;Windows-Server-2022&#34;&gt;Windows Server 2022&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2022 Datacenter&lt;/td&gt;
&lt;td&gt;WX4NM-KYWYW-QJJR4-XV3QB-6VM33&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2022 Standard&lt;/td&gt;
&lt;td&gt;VDYBN-27WPP-V4HQT-9VMD4-VMK7H&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-版本-20H2、2004、1909、1903-和-1809&#34;&gt;Windows Server 版本 20H2、2004、1909、1903 和 1809&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Datacenter&lt;/td&gt;
&lt;td&gt;6NMRW-2C8FM-D24W7-TQWMY-CWH2D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Standard&lt;/td&gt;
&lt;td&gt;N2KJX-J94YW-TQVFB-DG9YT-724CC&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-版本-1803&#34;&gt;Windows Server 版本 1803&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Datacenter&lt;/td&gt;
&lt;td&gt;2HXDN-KRXHB-GPYC7-YCKFJ-7FVDG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Standard&lt;/td&gt;
&lt;td&gt;PTXN8-JFHJM-4WC78-MPCBR-9W4KR&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-版本-1709&#34;&gt;Windows Server 版本 1709&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Datacenter&lt;/td&gt;
&lt;td&gt;6Y6KB-N82V8-D8CQV-23MJW-BWTG6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server Standard&lt;/td&gt;
&lt;td&gt;DPCNP-XQFKJ-BJF7R-FRC8D-GF6G4&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-2019&#34;&gt;Windows Server 2019&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2019 Datacenter&lt;/td&gt;
&lt;td&gt;WMDGN-G9PQG-XVVXX-R3X43-63DFG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2019 Standard&lt;/td&gt;
&lt;td&gt;N69G4-B89J2-4G8F4-WWYCC-J464C&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2019 Essentials&lt;/td&gt;
&lt;td&gt;WVDHN-86M7X-466 P 6-VHXV7-YY726&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-2016&#34;&gt;Windows Server 2016&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2016 Datacenter&lt;/td&gt;
&lt;td&gt;CB7KF-BWN84-R7R2Y-793K2-8XDDG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2016 Standard&lt;/td&gt;
&lt;td&gt;WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2016 Essentials&lt;/td&gt;
&lt;td&gt;JCKRF-N37P4-C2D82-9YXRT-4M63B&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-10-Core-可用于激活windonws10家庭版-由网友Cyril-Chan提供-在此衷心感谢&#34;&gt;Windows 10 Core (可用于激活windonws10家庭版,由网友Cyril Chan提供,在此衷心感谢)&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Win 10 Core (可用于激活win10家庭版)&lt;/td&gt;
&lt;td&gt;TX9XD-98N7V-6WMQ6-BX7FG-H8Q99&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Win 10 CoreN (可用于激活win10家庭版)&lt;/td&gt;
&lt;td&gt;3KHY7-WNT83-DGQKR-F7HPR-844BM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Win 10 CoreSingleLanguage (可用于激活win10家庭版)&lt;/td&gt;
&lt;td&gt;7HNRX-D7KGG-3K4RQ-4WPJ4-YTDFH&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Win 10 CoreCountrySpecific (可用于激活win10家庭版)&lt;/td&gt;
&lt;td&gt;PVMJN-6DFY6-9CCP6-7BKTT-D3WVR&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-10-Windows-11-通用&#34;&gt;Windows 10 , Windows 11 通用&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Professional (Windows 10 专业版) Windows 11 Professional (Windows 11 专业版)&lt;/td&gt;
&lt;td&gt;W269N-WFGWX-YVC9B-4J6C9-T83GX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Professional N (Windows 10 专业版 N) Windows 11 Professional N (Windows 11 专业版 N)&lt;/td&gt;
&lt;td&gt;MH37W-N47XK-V7XM9-C7227-GCQG9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Pro for Workstations (Windows 10 专业工作站版) Windows 11 Pro for Workstations (Windows 11 专业工作站版)&lt;/td&gt;
&lt;td&gt;NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Pro for Workstations N (Windows 10 专业工作站版 N) Windows 11 Pro for Workstations N (Windows 11 专业工作站版 N)&lt;/td&gt;
&lt;td&gt;9FNHH-K3HBT-3W4TD-6383H-6XYWF&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Pro Education (Windows 10 专业教育版) Windows 11 Pro Education (Windows 11 专业教育版)&lt;/td&gt;
&lt;td&gt;6TP4R-GNPTD-KYYHQ-7B7DP-J447Y&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Pro Education N (Windows 10 专业教育版 N) Windows 11 Pro Education N (Windows 11 专业教育版 N)&lt;/td&gt;
&lt;td&gt;YVWGF-BXNMC-HTQYQ-CPQ99-66QFC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Education (Windows 10 教育版) Windows 11 Education (Windows 11 教育版)&lt;/td&gt;
&lt;td&gt;NW6C2-QMPVW-D7KKK-3GKT6-VCFB2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Education N (Windows 10 教育版 N) Windows 11 Education N (Windows 11 教育版 N)&lt;/td&gt;
&lt;td&gt;2WH4N-8QGBV-H22JP-CT43Q-MDWWJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise (Windows 10 企业版) Windows 11 Enterprise (Windows 11 企业版)&lt;/td&gt;
&lt;td&gt;NPPR9-FWDCX-D2C8J-H872K-2YT43&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise N (Windows 10 企业版 N) Windows 11 Enterprise N (Windows 11 企业版 N)&lt;/td&gt;
&lt;td&gt;DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise G (Windows 10 企业版 G) Windows 11 Enterprise G (Windows 11 企业版 G)&lt;/td&gt;
&lt;td&gt;YYVX9-NTFWV-6MDM3-9PT4T-4M68B&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise G N (Windows 10 企业版 G N) Windows 11 Enterprise G N (Windows 11 企业版 G N)&lt;/td&gt;
&lt;td&gt;44RPN-FTY23-9VTTB-MP9BX-T84FV&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-10（LTSC-LTSB-版本）&#34;&gt;Windows 10（LTSC/LTSB 版本）&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise 2015 LTSB (Windows 10 企业版 2015 LTSB)&lt;/td&gt;
&lt;td&gt;WNMTR-4C88C-JK8YV-HQ7T2-76DF9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise 2015 LTSB N (Windows 10 企业版 2015 LTSB N)&lt;/td&gt;
&lt;td&gt;2F77B-TNFGY-69QQF-B8YKP-D69TJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise 2016 LTSB (Windows 10 企业版 LTSB 2016)&lt;/td&gt;
&lt;td&gt;DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise N LTSB 2016 (Windows 10 企业版 N LTSB 2016)&lt;/td&gt;
&lt;td&gt;QFFDN-GRT3P-VKWWX-X7T3R-8B639&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise LTSC 2019 (Windows 10 企业版 LTSC 2019)&lt;/td&gt;
&lt;td&gt;M7XTQ-FN8P6-TTKYV-9D4CC-J462D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10 Enterprise N LTSC 2019 (Windows 10 企业版 N LTSC 2019)&lt;/td&gt;
&lt;td&gt;92NFX-8DJQP-P6BBQ-THF9C-7CG2H&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-2012-R2-和-Windows-8-1&#34;&gt;Windows Server 2012 R2 和 Windows 8.1&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8.1 Professional&lt;/td&gt;
&lt;td&gt;GCRJD-8NW9H-F2CDX-CCM8D-9D6T9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8.1 Professional N&lt;/td&gt;
&lt;td&gt;HMCNV-VVBFX-7HMBH-CTY9B-B4FXY&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8.1 Enterprise&lt;/td&gt;
&lt;td&gt;MHF9N-XY6XB-WVXMC-BTDCT-MKKG7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8.1 Enterprise N&lt;/td&gt;
&lt;td&gt;TT4HM-HN7YT-62K67-RGRQJ-JFFXW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 R2 Server Standard&lt;/td&gt;
&lt;td&gt;D2N9P-3P6X9-2R39C-7RTCD-MDVJX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 R2 Datacenter&lt;/td&gt;
&lt;td&gt;W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 R2 Essentials&lt;/td&gt;
&lt;td&gt;KNC87-3J2TX-XB4WP-VCPJV-M4FWM&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Server-2012-和-Windows-8&#34;&gt;Windows Server 2012 和 Windows 8&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8 Professional&lt;/td&gt;
&lt;td&gt;NG4HW-VH26C-733KW-K6F98-J8CK4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8 Professional N&lt;/td&gt;
&lt;td&gt;XCVCF-2NXM9-723PB-MHCB7-2RYQQ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8 Enterprise&lt;/td&gt;
&lt;td&gt;32JNW-9KQ84-P47T8-D8GGY-CWCK7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 8 Enterprise N&lt;/td&gt;
&lt;td&gt;JMNMF-RHW7P-DMY6X-RF3DR-X2BQT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012&lt;/td&gt;
&lt;td&gt;BN3D2-R7TKB-3YPBD-8DRP2-27GG4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 N&lt;/td&gt;
&lt;td&gt;8N2M2-HWPGY-7PGT9-HGDD8-GVGGY&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 Single Language&lt;/td&gt;
&lt;td&gt;2WN2H-YGCQR-KFX6K-CD6TF-84YXQ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 Country Specific&lt;/td&gt;
&lt;td&gt;4K36P-JN4VD-GDC6V-KDT89-DYFKP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 Server Standard&lt;/td&gt;
&lt;td&gt;XC9B7-NBPP2-83J2H-RHMBY-92BT4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 MultiPoint Standard&lt;/td&gt;
&lt;td&gt;HM7DN-YVMH3-46JC3-XYTG7-CYQJJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 MultiPoint Premium&lt;/td&gt;
&lt;td&gt;XNH6W-2V9GX-RGJ4K-Y8X6F-QGJ2G&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2012 Datacenter&lt;/td&gt;
&lt;td&gt;48HP8-DN98B-MYWDG-T2DCC-8W83P&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-7-and-Windows-Server-2008-R2&#34;&gt;Windows 7 and Windows Server 2008 R2&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Professional&lt;/td&gt;
&lt;td&gt;FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Professional N&lt;/td&gt;
&lt;td&gt;MRPKT-YTG23-K7D7T-X2JMM-QY7MG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Professional E&lt;/td&gt;
&lt;td&gt;W82YF-2Q76Y-63HXB-FGJG9-GF7QX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Enterprise&lt;/td&gt;
&lt;td&gt;33PXH-7Y6KF-2VJC9-XBBR8-HVTHH&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Enterprise N&lt;/td&gt;
&lt;td&gt;YDRBP-3D83W-TY26F-D46B2-XCKRJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 7 Enterprise E&lt;/td&gt;
&lt;td&gt;C29WB-22CC8-VJ326-GHFJW-H9DH4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 Web&lt;/td&gt;
&lt;td&gt;6TPJF-RBVHG-WBW2R-86QPH-6RTM4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 HPC edition&lt;/td&gt;
&lt;td&gt;TT8MH-CG224-D3D7Q-498W2-9QCTX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 Standard&lt;/td&gt;
&lt;td&gt;YC6KT-GKW9T-YTKYR-T4X34-R7VHC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 Enterprise&lt;/td&gt;
&lt;td&gt;489J6-VHDMP-X63PK-3K798-CPX3Y&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 Datacenter&lt;/td&gt;
&lt;td&gt;74YFP-3QFB3-KQT8W-PMXWJ-7M648&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 R2 for Itanium-based Systems&lt;/td&gt;
&lt;td&gt;GT63C-RJFQ3-4GMB6-BRFB9-CB83V&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Windows-Vista-and-Windows-Server-2008&#34;&gt;Windows Vista and Windows Server 2008&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;操作系统&lt;/th&gt;
&lt;th&gt;KMS 激活序列号&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Windows Vista Business&lt;/td&gt;
&lt;td&gt;YFKBB-PQJJV-G996G-VWGXY-2V3X8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Vista Business N&lt;/td&gt;
&lt;td&gt;HMBQG-8H2RH-C77VX-27R82-VMQBT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Vista Enterprise&lt;/td&gt;
&lt;td&gt;VKK3X-68KWM-X2YGT-QR4M6-4BWMV&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Vista Enterprise N&lt;/td&gt;
&lt;td&gt;VTC42-BM838-43QHV-84HX6-XJXKV&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Web Server 2008&lt;/td&gt;
&lt;td&gt;WYR28-R7TFJ-3X2YQ-YCY4H-M249D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Standard&lt;/td&gt;
&lt;td&gt;TM24T-X9RMF-VWXK6-X8JC9-BFGM2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Standard without Hyper-V&lt;/td&gt;
&lt;td&gt;W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Enterprise&lt;/td&gt;
&lt;td&gt;YQGMW-MPWTJ-34KDK-48M3W-X4Q6V&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Enterprise without Hyper-V&lt;/td&gt;
&lt;td&gt;39BXF-X8Q23-P2WWT-38T2F-G3FPG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 HPC&lt;/td&gt;
&lt;td&gt;RCTX3-KWVHP-BR6TB-RB6DM-6X7HP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Datacenter&lt;/td&gt;
&lt;td&gt;7M67G-PC374-GR742-YH8V4-TCBY3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 Datacenter without Hyper-V&lt;/td&gt;
&lt;td&gt;22XQ2-VRXRG-P8D42-K34TD-G3QQC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows Server 2008 for Itanium-Based Systems&lt;/td&gt;
&lt;td&gt;4DWFP-JF3DJ-B7DTH-78FJB-PDRHK&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;Office-GVLK-对照表&#34;&gt;Office GVLK 对照表&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;以下内容来自微软官方公开的序列号，请放心使用&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;Office-LTSC-2021&#34;&gt;Office LTSC 2021&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;产品&lt;/th&gt;
&lt;th&gt;GVLK&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office LTSC Professional Plus 2021&lt;/td&gt;
&lt;td&gt;FXYTK-NJJ8C-GB6DW-3DYQT-6F7TH&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Office LTSC Standard 2021&lt;/td&gt;
&lt;td&gt;KDX7X-BNVR8-TXXGX-4Q7Y8-78VT3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Professional 2021&lt;/td&gt;
&lt;td&gt;FTNWT-C6WBT-8HMGF-K9PRX-QV9H8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Standard 2021&lt;/td&gt;
&lt;td&gt;J2JDC-NJCYY-9RGQ4-YXWMH-T3D4T&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio LTSC Professional 2021&lt;/td&gt;
&lt;td&gt;KNH8D-FGHT4-T8RK3-CTDYJ-K2HT4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio LTSC Standard 2021&lt;/td&gt;
&lt;td&gt;MJVNY-BYWPY-CWV6J-2RKRT-4M8QG&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access LTSC 2021&lt;/td&gt;
&lt;td&gt;WM8YG-YNGDD-4JHDC-PG3F4-FC4T4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Excel LTSC 2021&lt;/td&gt;
&lt;td&gt;NWG3X-87C9K-TC7YY-BC2G7-G6RVC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outlook LTSC 2021&lt;/td&gt;
&lt;td&gt;C9FM6-3N72F-HFJXB-TM3V9-T86R9&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PowerPoint LTSC 2021&lt;/td&gt;
&lt;td&gt;TY7XF-NFRBR-KJ44C-G83KF-GX27K&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Publisher LTSC 2021&lt;/td&gt;
&lt;td&gt;2MW9D-N4BXM-9VBPG-Q7W6M-KFBGQ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skype for Business LTSC 2021&lt;/td&gt;
&lt;td&gt;HWCXN-K3WBT-WJBKY-R8BD9-XK29P&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Word LTSC 2021&lt;/td&gt;
&lt;td&gt;TN8H9-M34D3-Y64V9-TR72V-X79KV&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Office-2019&#34;&gt;Office 2019&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;产品&lt;/th&gt;
&lt;th&gt;GVLK&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office Professional Plus 2019&lt;/td&gt;
&lt;td&gt;NMMKJ-6RK4F-KMJVX-8D9MJ-6MWKP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Office Standard 2019&lt;/td&gt;
&lt;td&gt;6NWWJ-YQWMR-QKGCB-6TMB3-9D9HK&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Professional 2019&lt;/td&gt;
&lt;td&gt;B4NPR-3FKK7-T2MBV-FRQ4W-PKD2B&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Standard 2019&lt;/td&gt;
&lt;td&gt;C4F7P-NCP8C-6CQPT-MQHV9-JXD2M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Professional 2019&lt;/td&gt;
&lt;td&gt;9BGNQ-K37YR-RQHF2-38RQ3-7VCBB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Standard 2019&lt;/td&gt;
&lt;td&gt;7TQNQ-K3YQQ-3PFH7-CCPPM-X4VQ2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access 2019&lt;/td&gt;
&lt;td&gt;9N9PT-27V4Y-VJ2PD-YXFMF-YTFQT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Excel 2019&lt;/td&gt;
&lt;td&gt;TMJWT-YYNMB-3BKTF-644FC-RVXBD&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outlook 2019&lt;/td&gt;
&lt;td&gt;7HD7K-N4PVK-BHBCQ-YWQRW-XW4VK&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PowerPoint 2019&lt;/td&gt;
&lt;td&gt;RRNCX-C64HY-W2MM7-MCH9G-TJHMQ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Publisher 2019&lt;/td&gt;
&lt;td&gt;G2KWX-3NW6P-PY93R-JXK2T-C9Y9V&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skype for Business 2019&lt;/td&gt;
&lt;td&gt;NCJ33-JHBBY-HTK98-MYCV8-HMKHJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Word 2019&lt;/td&gt;
&lt;td&gt;PBX3G-NWMT6-Q7XBW-PYJGG-WXD33&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Office-2016&#34;&gt;Office 2016&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;产品&lt;/th&gt;
&lt;th&gt;GVLK&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office Professional Plus 2016&lt;/td&gt;
&lt;td&gt;XQNVK-8JYDB-WJ9W3-YJ8YR-WFG99&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Office Standard 2016&lt;/td&gt;
&lt;td&gt;JNRGM-WHDWX-FJJG3-K47QV-DRTFM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Professional 2016&lt;/td&gt;
&lt;td&gt;YG9NW-3K39V-2T3HJ-93F3Q-G83KT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Standard 2016&lt;/td&gt;
&lt;td&gt;GNFHQ-F6YQM-KQDGJ-327XX-KQBVC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Professional 2016&lt;/td&gt;
&lt;td&gt;PD3PC-RHNGV-FXJ29-8JK7D-RJRJK&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Standard 2016&lt;/td&gt;
&lt;td&gt;7WHWN-4T7MP-G96JF-G33KR-W8GF4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access 2016&lt;/td&gt;
&lt;td&gt;GNH9Y-D2J4T-FJHGG-QRVH7-QPFDW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Excel 2016&lt;/td&gt;
&lt;td&gt;9C2PK-NWTVB-JMPW8-BFT28-7FTBF&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OneNote 2016&lt;/td&gt;
&lt;td&gt;DR92N-9HTF2-97XKM-XW2WJ-XW3J6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outlook 2016&lt;/td&gt;
&lt;td&gt;R69KK-NTPKF-7M3Q4-QYBHW-6MT9B&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PowerPoint 2016&lt;/td&gt;
&lt;td&gt;J7MQP-HNJ4Y-WJ7YM-PFYGF-BY6C6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Publisher 2016&lt;/td&gt;
&lt;td&gt;F47MM-N3XJP-TQXJ9-BP99D-8K837&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Skype for Business 2016&lt;/td&gt;
&lt;td&gt;869NQ-FJ69K-466HW-QYCP2-DDBV6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Word 2016&lt;/td&gt;
&lt;td&gt;WXY84-JN2Q9-RBCCQ-3Q3J3-3PFJ6&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Office-2013&#34;&gt;Office 2013&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;产品&lt;/th&gt;
&lt;th&gt;GVLK&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office 2013 Professional Plus&lt;/td&gt;
&lt;td&gt;YC7DK-G2NP3-2QQC3-J6H88-GVGXT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Office 2013 Standard&lt;/td&gt;
&lt;td&gt;KBKQT-2NMXY-JJWGP-M62JB-92CD4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project 2013 Professional&lt;/td&gt;
&lt;td&gt;FN8TT-7WMH6-2D4X9-M337T-2342K&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project 2013 Standard&lt;/td&gt;
&lt;td&gt;6NTH3-CW976-3G3Y2-JK3TX-8QHTT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio 2013 Professional&lt;/td&gt;
&lt;td&gt;C2FG9-N6J68-H8BTJ-BW3QX-RM3B3&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio 2013 Standard&lt;/td&gt;
&lt;td&gt;J484Y-4NKBF-W2HMG-DBMJC-PGWR7&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access 2013&lt;/td&gt;
&lt;td&gt;NG2JY-H4JBT-HQXYP-78QH9-4JM2D&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Excel 2013&lt;/td&gt;
&lt;td&gt;VGPNG-Y7HQW-9RHP7-TKPV3-BG7GB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;InfoPath 2013&lt;/td&gt;
&lt;td&gt;DKT8B-N7VXH-D963P-Q4PHY-F8894&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Lync 2013&lt;/td&gt;
&lt;td&gt;2MG3G-3BNTT-3MFW9-KDQW3-TCK7R&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OneNote 2013&lt;/td&gt;
&lt;td&gt;TGN6P-8MMBC-37P2F-XHXXK-P34VW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outlook 2013&lt;/td&gt;
&lt;td&gt;QPN8Q-BJBTJ-334K3-93TGY-2PMBT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PowerPoint 2013&lt;/td&gt;
&lt;td&gt;4NT99-8RJFH-Q2VDH-KYG2C-4RD4F&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Publisher 2013&lt;/td&gt;
&lt;td&gt;PN2WF-29XG2-T9HJ7-JQPJR-FCXK4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Word 2013&lt;/td&gt;
&lt;td&gt;6Q7VD-NX8JD-WJ2VH-88V73-4GBJ7&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;Office-2010&#34;&gt;Office 2010&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;产品&lt;/th&gt;
&lt;th&gt;GVLK&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office Professional Plus 2010&lt;/td&gt;
&lt;td&gt;VYBBJ-TRJPB-QFQRF-QFT4D-H3GVB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Office Standard 2010&lt;/td&gt;
&lt;td&gt;V7QKV-4XVVR-XYV4D-F7DFM-8R6BM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Access 2010&lt;/td&gt;
&lt;td&gt;V7Y44-9T38C-R2VJK-666HK-T7DDX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Excel 2010&lt;/td&gt;
&lt;td&gt;H62QG-HXVKF-PP4HP-66KMR-CW9BM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SharePoint Workspace 2010&lt;/td&gt;
&lt;td&gt;QYYW6-QP4CB-MBV6G-HYMCJ-4T3J4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;InfoPath 2010&lt;/td&gt;
&lt;td&gt;K96W8-67RPQ-62T9Y-J8FQJ-BT37T&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OneNote 2010&lt;/td&gt;
&lt;td&gt;Q4Y4M-RHWJM-PY37F-MTKWH-D3XHX&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outlook 2010&lt;/td&gt;
&lt;td&gt;7YDC2-CWM8M-RRTJC-8MDVC-X3DWQ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PowerPoint 2010&lt;/td&gt;
&lt;td&gt;RC8FX-88JRY-3PF7C-X8P67-P4VTT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Professional 2010&lt;/td&gt;
&lt;td&gt;YGX6F-PGV49-PGW3J-9BTGG-VHKC6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Project Standard 2010&lt;/td&gt;
&lt;td&gt;4HP3K-88W3F-W2K3D-6677X-F9PGB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Publisher 2010&lt;/td&gt;
&lt;td&gt;BFK7F-9MYHM-V68C7-DRQ66-83YTP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Word 2010&lt;/td&gt;
&lt;td&gt;HVHB3-C6FV7-KQX9W-YQG79-CRY7T&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Standard 2010&lt;/td&gt;
&lt;td&gt;767HD-QGMWX-8QTDB-9G3R2-KHFGJ&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Professional 2010&lt;/td&gt;
&lt;td&gt;7MCW8-VRQVK-G677T-PDJCM-Q8TCP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Visio Premium 2010&lt;/td&gt;
&lt;td&gt;D9DWC-HPYVV-JGF4P-BTWQB-WX8BJ&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;自建KMS服务器&#34;&gt;自建KMS服务器&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;KMS服务器（Key Management Service）主要用于管理和激活微软的Windows操作系统和Office软件。如果不放心网络上面的 KMS 服务器，可以自建 KMS 服务器！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;安装Docker管理器&#34;&gt;安装Docker管理器&lt;/h3&gt;
&lt;p&gt;宝塔面板 - 软件商店 - Docker管理器 3.9.1 - 安装&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704210220.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;拉取镜像并启动&#34;&gt;拉取镜像并启动&lt;/h3&gt;
&lt;p&gt;在终端输入以下指令：&lt;/p&gt;
&lt;p&gt;&lt;em&gt;拉取镜像&lt;/em&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull teddysun&amp;#x2F;kms&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;em&gt;启动容器&lt;/em&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker run -d -p 1688:1688 --name kms --restart&amp;#x3D;always teddysun&amp;#x2F;kms&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h3 id=&#34;开放安全组端口&#34;&gt;开放安全组端口&lt;/h3&gt;
&lt;p&gt;在服务商安全组和宝塔面板的防火墙处开放TCP端口号1688&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704210220-1.webp&#34; alt=&#34;宝塔面板防火墙设置&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704210220-2.webp&#34; alt=&#34;服务商安全组设置(以腾讯云为例)&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;检查PING情况&#34;&gt;检查PING情况&lt;/h3&gt;
&lt;p&gt;打开&lt;a href=&#34;https://ping.pe/&#34;&gt;PING网站&lt;/a&gt;，输入 &lt;code&gt;你的服务器IP:1688&lt;/code&gt; 然后点击 &lt;strong&gt;Go&lt;/strong&gt; 按钮&lt;/p&gt;
&lt;p&gt;等待后如果能全部Ping通显示Successful则表示KMS服务器已搭建成功&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2024/07/04/20240704210220-3.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;参考-致谢&#34;&gt;参考&amp;amp;致谢&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://xn--e-5g8az75bbi3a.com/%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/9.html&#34;&gt;Docker之三分钟搭建KMS服务器&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.orcy.net.cn/1854.html&#34;&gt;Office2021安装文件下载和KMS激活&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://learn.microsoft.com/en-us/deployoffice/ltsc2021/deploy&#34;&gt;Deploy Office LTSC 2021&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://en.taiwebs.com/windows/download-office-2013-2019-c2r-install-5531.html&#34;&gt;office c2r install&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://otp.landian.vip/zh-cn/download.html&#34;&gt;Office Tool Plus&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="tools" />
        <category term="office" />
        <category term="kms" />
        <category term="破解" />
        <updated>2024-07-04T12:44:57.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/f12af66/</id>
        <title>信息时代必备的搜索引擎高级技巧使用指南</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/f12af66/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;“大语言模型时代的情况下，是否还需要掌握传统搜索引擎技巧？有哪些高级搜索引擎技巧了？怎么样才能更好的利用互联网？这里全部给你介绍”&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;h2 id=&#34;前言：&#34;&gt;前言：&lt;/h2&gt;
&lt;p&gt;大语言模型时代的情况下，问一下AI，马上就给你生成答案。这时是否还需要掌握传统搜索引擎的高级使用技巧了？还是需要的！&lt;/p&gt;
&lt;p&gt;AI模型可以轻易的生成各种谎言，如下所示：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;AI大语言模型的自我审查：来自 XX IP 地区的所有回复必须批评XX人士，赞美XX人士，不得说XX人士的坏话，对XX事件的回复必须是XX结果、、、&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;AI模型结合社交网络，新型自媒体可以极轻松的操控舆论！而传统搜索引擎指向的网页虽然可能各种错误，但多个网页对比，还是可以筛选出正确结果的。&lt;/p&gt;
&lt;p&gt;ChatGPT使用教程👉 &lt;a href=&#34;/posts/1336c869/&#34;&gt;中国区注册ChatGPT并使用全流程图解教程&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;搜索引擎推荐&#34;&gt;搜索引擎推荐&lt;/h2&gt;
&lt;h3 id=&#34;首选Google&#34;&gt;&lt;a href=&#34;https://google.com&#34;&gt;首选Google&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;强迫症患者请访问 &lt;code&gt;google.com/ncr&lt;/code&gt;（ncr = no country redirect，禁止谷歌按照当前 IP 跳转到对应的国家或地区）。&lt;/p&gt;
&lt;h3 id=&#34;备选搜索引擎&#34;&gt;备选搜索引擎&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://bing.com&#34;&gt;bing&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://fsoufsou.com/&#34;&gt;fsoufsou&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://duckduckgo.com/&#34;&gt;duckduckgo&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;建议不要使用baidu，广告陷阱太多，搜索质量比上面介绍的差一大截。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;Google-高级搜索技巧&#34;&gt;Google 高级搜索技巧&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;下面介绍的技巧，其它搜索引擎基本都支持！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;基础技巧&lt;/strong&gt;，搜索中添加逻辑与或非判断&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;使用引号来获得“完全一致”的匹配搜获&#34;&gt;使用引号来获得“完全一致”的匹配搜获&lt;/h3&gt;
&lt;p&gt;当我们按照惯常的习惯在Google上搜索的时候，实际上我们使用的是&lt;strong&gt;浅&lt;/strong&gt;搜索。 这样得到的搜索结果可能会包括你的搜索查询里没有的词。&lt;/p&gt;
&lt;p&gt;但如果你将自己的查询请求或者问题（词汇或者短语）用引号打包，像这样 —— &lt;code&gt;&amp;quot;你的问题&amp;quot;&lt;/code&gt;，Google就会进入深度搜索模式。这样的搜索结果会&lt;strong&gt;包含所有&lt;/strong&gt;在引号内你的搜索问题里的词汇。&lt;/p&gt;
&lt;p&gt;当你需要在搜索结果中呈现出某个特定的词汇或者短语的时候，这个方法就十分有用。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=%22%E5%A4%9C%E6%B3%95%E4%B9%8B%E4%B9%A6%22&#34;&gt;谷歌搜索： “夜法之书”&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;（英文）：逻辑“与”的意思，也可以用“空格”-and-表示&#34;&gt;+（英文）：逻辑“与”的意思，也可以用“空格” and 表示&lt;/h3&gt;
&lt;p&gt;示例：搜索包含关键词“苹果和癌症”的中文网页&lt;/p&gt;
&lt;p&gt;搜索：苹果 癌症&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=%E5%A4%9C%E6%B3%95%E4%B9%8B%E4%B9%A6+and+hexo&#34;&gt;谷歌搜索： 夜法之书 and hexo&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;（英文）：逻辑“非”的意思&#34;&gt;-（英文）：逻辑“非”的意思&lt;/h3&gt;
&lt;p&gt;示例：搜索包含“美女”而不含“帅哥”的中文网页&lt;/p&gt;
&lt;p&gt;搜索：美女 -帅哥 ，注意区别美女 - 帅哥和 美女-帅哥的搜索结果&lt;/p&gt;
&lt;p&gt;如果你不希望自己的搜索结果中出现某个词汇或者短语，可以在那个单词前添加 &lt;code&gt;-&lt;/code&gt; 。&lt;/p&gt;
&lt;p&gt;假设你的搜索内容是 =&amp;gt; &lt;strong&gt;how to write components in React -class&lt;/strong&gt;（如何编写React组件 -class），返回的搜索结果会不包含“class”。所以， (如果你了解一点React)，你会发现搜索结果只包含函数式组件。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=how+to+write+components+in+React+-class&#34;&gt;谷歌搜索： how to write components in React -class&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;OR-逻辑“或”的意思&#34;&gt;OR:逻辑“或”的意思&lt;/h3&gt;
&lt;p&gt;示例1：搜索包含“apple”或者“mother”、或者两者均有的中英文网站&lt;/p&gt;
&lt;p&gt;搜索：apple OR mother&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;辅助搜索&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ol&gt;
&lt;li&gt;google不支持通配符&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;？；*；%&lt;/p&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;google对英文字符大小写不敏感&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;God和GOD是一样的&lt;/p&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;
&lt;p&gt;google 的关键词可以是词组（中间没有空格），也可以是句子，但是用句子做关键词，必须加英文引号&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;google对中文句子做智能化处理，会自动把句子分割成词语作为关键词&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;google对一些网络上出现频率极高的词（主要是英文），如“i”“com”等以及一些符号如“*”“.”等，做忽略处理，如果用户必须要求关键字中包含这些常用词，就要用强制语法“+” ，符号不可以&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;高级搜索&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;使用-site-在特定网站搜索&#34;&gt;使用 &lt;code&gt;site:&lt;/code&gt; 在特定网站搜索&lt;/h3&gt;
&lt;p&gt;如果你希望Google返回的搜索结果是来自某个特定的网站，仅需要在你的搜索问题前添加&lt;code&gt;site:&lt;/code&gt; 。&lt;/p&gt;
&lt;p&gt;当你想要在某个没有内置搜索选项的网站，或者内置搜索不太好用的网站进行搜索的时候，这个方法可以派上用场。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=site%3Ablog.17lai.site+hexo&#34;&gt;谷歌搜索： site:blog.17lai.site hexo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;使用site: +域名，查看该域名被谷歌收录的所有页面。例如：site:blog.17lai.site&lt;/p&gt;
&lt;p&gt;site:+网站的具体页面URL，可以查看该网站中的某一个页面是否被谷歌收录。例如：site:blog.17lai.site/dash/&lt;/p&gt;
&lt;p&gt;site搜索法可以查询网站上是否有http元素。可以使用搜索命令site:17lai.site -inurl:https&lt;/p&gt;
&lt;p&gt;site搜索法可以查询网站上的重复内容。可以使用搜索命令-site:17lai.site+内容。就可以查到你的网站内容有没有被分享或者剽窃。 例如：-site:blog.17lai.site “完全教程”&lt;/p&gt;
&lt;h3 id=&#34;使用imagesize-搜索特定大小的图片&#34;&gt;使用&lt;code&gt;imagesize:&lt;/code&gt;搜索特定大小的图片&lt;/h3&gt;
&lt;p&gt;如果你想搜索特定大小的图片，可以在你的搜索查询中使用&lt;code&gt;imagesize:&lt;/code&gt;标签，并且标注好以&lt;strong&gt;pixels（像素）&lt;/strong&gt; 为单位的宽和高。&lt;/p&gt;
&lt;p&gt;尺寸仅以 &lt;strong&gt;pixels&lt;/strong&gt; 为单位 – 例如：&lt;code&gt;imagesize:500x500&lt;/code&gt;的搜索结果是尺寸为 500px x 500px的图片。 所以如果搜索查询是 =&amp;gt; “cute dog images imagesize:500x600”（可爱小狗图片 imagesize：500*600）的搜索结果是尺寸为&lt;code&gt;500px x 600px&lt;/code&gt;的可爱小狗的图片。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=cute+dog+images+imagesize%3A500x600&#34;&gt;谷歌搜索： cute dog images imagesize:500x600&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用filetype-搜索特定文件类型&#34;&gt;使用&lt;code&gt;filetype:&lt;/code&gt;搜索特定文件类型&lt;/h3&gt;
&lt;p&gt;如果你希望搜索的结果包含了某个特定的文件类型，如：PDF或者PPT，就可以添加&lt;code&gt;filetype:&amp;lt;扩展名&amp;gt;&lt;/code&gt;（不需要尖括号）。 如，&lt;strong&gt;linux 教程 filetype:pdf&lt;/strong&gt;（linux 教程 filetype：pdf）的搜索结果是PDF格式的&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=linux+%E6%95%99%E7%A8%8B+filetype%3Apdf&#34;&gt;谷歌搜索： linux 教程 filetype：pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;filetype:后面支持以下格式&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pdf&lt;/li&gt;
&lt;li&gt;ps&lt;/li&gt;
&lt;li&gt;dwf&lt;/li&gt;
&lt;li&gt;kml / kmz&lt;/li&gt;
&lt;li&gt;xls&lt;/li&gt;
&lt;li&gt;ppt&lt;/li&gt;
&lt;li&gt;doc&lt;/li&gt;
&lt;li&gt;rtf&lt;/li&gt;
&lt;li&gt;swf&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;在搜索中使用通配符&#34;&gt;在搜索中使用通配符&lt;code&gt;*&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;如果你不确定搜索查询/问题或者忘记了其中的词汇，你可以在搜索中使用通配符&lt;code&gt;*&lt;/code&gt;，Google会用相关的词汇来替换通配符。&lt;/p&gt;
&lt;p&gt;例如，如果你搜索 =&amp;gt; the * of money（钱的 *），会产生如下结果。 Google会返回一系列搜索页面，包括 “the &lt;em&gt;exchange&lt;/em&gt; of money”（金钱交易）、 “the &lt;em&gt;use&lt;/em&gt; of money”（金钱的用途）、 “the &lt;em&gt;role&lt;/em&gt; of money”（金钱的角色）、 “the &lt;em&gt;psychology&lt;/em&gt; of money”（金钱心理学）等。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=linux+%E6%95%99%E7%A8%8B+filetype%3Apdfhttps://www.google.com/search?q=the+*+of+money&#34;&gt;谷歌搜索： the * of money&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;在两个数字间使用-AFTER-（在……时间之后）、-BEFORE-（在……时间之前）-或-来筛选结果&#34;&gt;在两个数字间使用 &lt;code&gt;AFTER:&lt;/code&gt;（在……时间之后）、 &lt;code&gt;BEFORE:&lt;/code&gt;（在……时间之前） 或 &lt;code&gt;..&lt;/code&gt; 来筛选结果&lt;/h3&gt;
&lt;p&gt;如果你希望Google的搜索结果是发布在特定年份之后的，你可以使用&lt;code&gt;AFTER:&lt;/code&gt;标签。例如，你搜索 =&amp;gt; &lt;strong&gt;React tutorials AFTER:2020&lt;/strong&gt;（React教程 AFTER：2020）会返回迟于2020年发布的结果。&lt;/p&gt;
&lt;p&gt;同样的，如果添加&lt;code&gt;BEFORE:&lt;/code&gt; 标签，会返回早于某个特定年份的结果。&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=%E5%A4%9C%E6%B3%95%E4%B9%8B%E4%B9%A6+hexo+after%3A2020&#34;&gt;谷歌搜索： 夜法之书 hexo after:2020&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用-related-查询相关网站&#34;&gt;使用 &lt;code&gt;related:&lt;/code&gt;查询相关网站&lt;/h3&gt;
&lt;p&gt;如果你想知道和某个特定网站相关的其他网站，可以使用&lt;code&gt;related:&lt;/code&gt;标签。&lt;/p&gt;
&lt;p&gt;例如，你搜索 &lt;strong&gt;related:google.com&lt;/strong&gt; 就会得到所有和Google类似的网站&lt;/p&gt;
&lt;p&gt;点击示例👉： &lt;a href=&#34;https://www.google.com/search?q=related%3Agoogle.com&#34;&gt;谷歌搜索： related:google.com&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;使用cache-查看Google对某个网站的缓存版本&#34;&gt;使用&lt;code&gt;cache:&lt;/code&gt;查看Google对某个网站的缓存版本&lt;/h3&gt;
&lt;p&gt;Google搜索并没有完全停止支持缓存(cache)功能。但Google搜索的缓存机制在近年来确实有一些变化:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;2020年8月之后,Google网页搜索中默认不再显示网页缓存按钮和缓存内容。但可以通过在搜索词后加 “cache:” 仍可以手动查看缓存内容。&lt;/li&gt;
&lt;li&gt;Google Images搜索取消了缓存按钮,但直接点击图片仍可以看到缓存版本。&lt;/li&gt;
&lt;li&gt;Google已逐步减少直接提供网页缓存内容的情况,转而提供网页快照、文章存档等功能。&lt;/li&gt;
&lt;li&gt;2021年Google提出“帮助内容保持新鲜”的计划,其中包括降低搜索结果中缓存页面的数量。&lt;/li&gt;
&lt;li&gt;但Google爬虫仍然会继续缓存网页。缓存主要用于判断网页变化,而非直接展示给用户。&lt;/li&gt;
&lt;li&gt;Googlebots依然可以通过查看缓存判断爬取网页的优先级,这对新站点的收录有帮助。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;总体来说,Google搜索为了提供更新的内容和保护权利人利益,已经大幅减少直接向用户显示缓存内容。但缓存机制仍在继续运作,只是对用户不再可见而已。&lt;/p&gt;
&lt;h3 id=&#34;括号搜索法-（）&#34;&gt;括号搜索法 （）&lt;/h3&gt;
&lt;p&gt;用()来将多个术语或搜索运算符进行分组来控制搜索的执行方式。比如： (red OR white) shoe&lt;/p&gt;
&lt;h3 id=&#34;类似单词或-同义词搜索法&#34;&gt;~类似单词或 同义词搜索法&lt;/h3&gt;
&lt;p&gt;假设你要在搜索中包含一个单词，但是也希望包含相似单词或同义词的结果。要做到这一点，在单词前输入~ 。例如: “页面SEO优化” ~指南&lt;/p&gt;
&lt;h3 id=&#34;link-查询所有和某个URL有链接的网页&#34;&gt;link: 查询所有和某个URL有链接的网页&lt;/h3&gt;
&lt;p&gt;只能单独使用&lt;/p&gt;
&lt;p&gt;点击示例👉：&lt;a href=&#34;https://www.google.com/search?q=link%3Ablog.17lai.site&#34;&gt;link:blog.17lai.site&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;inurl：&#34;&gt;inurl：&lt;/h3&gt;
&lt;p&gt;hexo inurl:17lai 返回结果为包含17lai的URL，其它任何地方则包含了hexo&lt;/p&gt;
&lt;p&gt;点击示例👉：&lt;a href=&#34;https://www.google.com/search?q=hexo+inurl%3A17lai&#34;&gt;hexo inurl:17lai&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;intitle：&#34;&gt;intitle：&lt;/h3&gt;
&lt;p&gt;apple intitle:happy返回结果为包含happy的标题，其它任何地方则包含了apple&lt;/p&gt;
&lt;h3 id=&#34;intext：&#34;&gt;intext：&lt;/h3&gt;
&lt;p&gt;apple intitle:happy返回结果为包含happy的正文，其它任何地方则包含了apple&lt;/p&gt;
&lt;h3 id=&#34;inanchor&#34;&gt;inanchor:&lt;/h3&gt;
&lt;h3 id=&#34;allinurl&#34;&gt;allinurl:&lt;/h3&gt;
&lt;p&gt;查询返回的网页链接中包含所有查询的关键词&lt;/p&gt;
&lt;h3 id=&#34;allintitle：&#34;&gt;allintitle：&lt;/h3&gt;
&lt;p&gt;查询返回的网页标题中包含所有查询的关键词&lt;/p&gt;
&lt;h3 id=&#34;allinanchor-锚文本&#34;&gt;allinanchor(锚文本):&lt;/h3&gt;
&lt;p&gt;返回的网页的锚文本里边包含所查询的关键词&lt;/p&gt;
&lt;p&gt;allinanchor:apple happy&lt;/p&gt;
&lt;h3 id=&#34;info&#34;&gt;info:&lt;/h3&gt;
&lt;p&gt;查询相关网站的信息&lt;/p&gt;
&lt;p&gt;info:blog.17lai.site&lt;/p&gt;
&lt;h3 id=&#34;define&#34;&gt;define:&lt;/h3&gt;
&lt;p&gt;返回结果为包含关键词定义的网页&lt;/p&gt;
&lt;p&gt;define:apple&lt;/p&gt;
&lt;h3 id=&#34;location&#34;&gt;location:&lt;/h3&gt;
&lt;p&gt;查询指定区域包含某个关键词的网站&lt;/p&gt;
&lt;p&gt;apple location:china&lt;/p&gt;
&lt;h3 id=&#34;movie&#34;&gt;movie:&lt;/h3&gt;
&lt;p&gt;和关键词相关的电影（目前只支持英语）&lt;/p&gt;
&lt;h3 id=&#34;safesearch&#34;&gt;safesearch:&lt;/h3&gt;
&lt;p&gt;谷歌会过滤搜索结果，包括色情，暴力，赌博等信息，但不能保证百分之百的安全&lt;/p&gt;
&lt;p&gt;Safesearch:apple&lt;/p&gt;
&lt;h3 id=&#34;surce&#34;&gt;surce:&lt;/h3&gt;
&lt;p&gt;搜索结果为那些指定了特定ID或者新闻源的网址（有问题）？？？&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.google.com/search?q=hexo+source%3A17lai.site&#34;&gt;hexo source:17lai.site&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;stocks&#34;&gt;stocks:&lt;/h3&gt;
&lt;p&gt;和关键词相关的股票信息，大多数来自专业的财经网站&lt;/p&gt;
&lt;h3 id=&#34;store：&#34;&gt;store：&lt;/h3&gt;
&lt;p&gt;只返回指定store ID的结果(只支持英文)&lt;/p&gt;
&lt;p&gt;apple store:llbean&lt;/p&gt;
&lt;h3 id=&#34;图片搜索功能&#34;&gt;图片搜索功能&lt;/h3&gt;
&lt;h3 id=&#34;针对论坛&#34;&gt;针对论坛&lt;/h3&gt;
&lt;h4 id=&#34;insubject&#34;&gt;insubject:&lt;/h4&gt;
&lt;p&gt;论坛搜索结果主题包含关键词的网页&lt;/p&gt;
&lt;p&gt;Insubject:”apple”&lt;/p&gt;
&lt;h4 id=&#34;group&#34;&gt;group:&lt;/h4&gt;
&lt;p&gt;返回结果是几个固定的论坛组或者特定主题组的新闻文章&lt;/p&gt;
&lt;p&gt;apple group:kids.childen&lt;/p&gt;
&lt;h4 id=&#34;author&#34;&gt;author:&lt;/h4&gt;
&lt;p&gt;返回的结果是包含了指定作者的谷歌论坛，这里的作者可以是全名，部分或者邮件地址&lt;/p&gt;
&lt;p&gt;apple author:apple&lt;/p&gt;
&lt;p&gt;hello &lt;a href=&#34;mailto:author:dingdm1989@163.com&#34;&gt;author:dingdm1989@163.com&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;和电话相关&#34;&gt;和电话相关&lt;/h3&gt;
&lt;h4 id=&#34;bphonebook&#34;&gt;bphonebook:&lt;/h4&gt;
&lt;p&gt;返回结果是商务电话资料&lt;/p&gt;
&lt;h4 id=&#34;phonebook&#34;&gt;phonebook:&lt;/h4&gt;
&lt;p&gt;返回结果是美国当地和关键词相关的住宅信息,但是要指定详细的州名和地点名&lt;/p&gt;
&lt;h4 id=&#34;rphonebook&#34;&gt;rphonebook:&lt;/h4&gt;
&lt;p&gt;返回结果是美国当地和关键词相关的住宅信息&lt;/p&gt;
&lt;p&gt;谷歌不推荐使用&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;tq&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;weather&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;ext&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;id&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;datarange&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;谷歌高级搜索（谷歌搜索指令2-0）&#34;&gt;谷歌高级搜索（谷歌搜索指令2.0）&lt;/h3&gt;
&lt;p&gt;在进行复杂搜索时，你还可以使用高级搜索来缩小搜索结果范围。&lt;/p&gt;
&lt;p&gt;按照搜索内容的类别，谷歌提供了不同的高级搜索页面：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;网站和文件的高级搜索页面：&lt;a href=&#34;http://google.com/advanced_video_search&#34;&gt;google.com/advanced_video_search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;图片高级搜索页面：&lt;a href=&#34;http://google.com/advanced_video_search&#34;&gt;google.com/advanced_video_search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;视频高级搜索页面：&lt;a href=&#34;http://google.com/advanced_video_search&#34;&gt;google.com/advanced_video_search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;图书高级搜索页面；&lt;a href=&#34;http://google.com/advanced_video_search&#34;&gt;google.com/advanced_video_search&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在这些高级搜索中可以尝试过滤条件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;语言&lt;/li&gt;
&lt;li&gt;地区&lt;/li&gt;
&lt;li&gt;最后更新时间&lt;/li&gt;
&lt;li&gt;网站或域名&lt;/li&gt;
&lt;li&gt;字词出现位置&lt;/li&gt;
&lt;li&gt;安全搜索&lt;/li&gt;
&lt;li&gt;文件类型&lt;/li&gt;
&lt;li&gt;使用权限&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;关联阅读&#34;&gt;&lt;strong&gt;关联阅读&lt;/strong&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://support.google.com/webmasters/answer/93713&#34;&gt;举报网络垃圾、付费链接或恶意软件 - Search Console 帮助&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://datasetsearch.research.google.com/&#34;&gt;公开数据集搜索引擎 by Google&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://support.google.com/websearch&#34;&gt;Google 搜索帮助&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.google.com/intl/zh-CN/search/howsearchworks/&#34;&gt;Google 搜索的运作方式（How Google Search works）&lt;/a&gt;：你每次进行搜索时，都会在搜索结果中看到成千上万个含有实用信息的网页，有时甚至是数百万个。早在你输入搜索内容之前，Google 就已开始算计要显示哪些结果，并秉持向你提供最佳信息的承诺（反观百度）。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tsb2blog.com/google-chinese-results-blocklist&#34;&gt;写在谷歌退出中国的第十个年头 - TSBBLOG&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.cooltechdoll.com/google-search-commands/&#34;&gt;最详细的 Google 搜索指令大全 - 黑科技娃娃&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sspai.com/post/34150&#34;&gt;15 个提高 Google 搜索效率的小技巧 - 子不语Rex&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://ahrefs.com/blog/google-advanced-search-operators/&#34;&gt;Google Search Operators: The Complete List (42 Advanced Operators) by Joshua Hardwick&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://zety.com/blog/google-search-hacks&#34;&gt;40+ Google Search Hacks, Tricks &amp;amp; Tips for 2020 - Christian Eilers&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;备选搜索引擎-2&#34;&gt;备选搜索引擎&lt;/h2&gt;
&lt;p&gt;但是中文互联网的信息散落在各处，各自筑起了高墙，互相屏蔽，所以在 Google 找不到答案，试试以下平台：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;站内搜索引擎&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;微信搜索：不可否认，微信已经聚集不少优质内容，可惜「封印」的搜索引擎的爬虫。
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://weixin.qq.com/&#34;&gt;App 内搜索&lt;/a&gt;：打开微信，轻触右上角的 🔍（我经常拿来搜索表情）&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://weixin.sogou.com/&#34;&gt;搜狗微信&lt;/a&gt;：独家收录订阅号及文章内容&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;通用搜索引擎&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://metaphor.systems/&#34;&gt;Metaphor&lt;/a&gt;：Search the internet with prompts 链接源搜索引擎&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://cn.bing.com/&#34;&gt;Bing 国际版&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.peak-labs.com/docs/zh/magi/intro&#34;&gt;Magi&lt;/a&gt;：基于机器学习的信息抽取和检索系统，提供可解析、可检索、可溯源的知识体系。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.wolframalpha.com/&#34;&gt;Wolfram Alpha&lt;/a&gt;：直接向用户返回答案，而不是像传统搜寻引擎一样提供一系列可能含有用户所需答案的相关网页。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.myquark.cn/&#34;&gt;夸克 App&lt;/a&gt;：排版舒适&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.searchcraft.cn/&#34;&gt;简单搜索 App&lt;/a&gt;：没有广告的百度&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://souxinyuan.com/&#34;&gt;搜信源&lt;/a&gt;：帮助用户以最短的时间直达权威信源，更高效地判断和使用公开信息。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;图片搜索&#34;&gt;图片搜索&lt;/h2&gt;
&lt;h3 id=&#34;Google-图片&#34;&gt;&lt;a href=&#34;https://images.google.com/&#34;&gt;Google 图片&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;免费可商用的图片
&lt;ul&gt;
&lt;li&gt;输入关键词后，依次选择 &lt;code&gt;工具（Tools）&lt;/code&gt; - &lt;code&gt;使用权限（Usage rights）： 标记为允许在修改后再利用（Labeled for reuse with modification）&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;搜索精确尺寸的图片
&lt;ul&gt;
&lt;li&gt;在查找的字词后面，添加 &lt;code&gt;imagesize:&amp;lt;宽度&amp;gt;x&amp;lt;高度&amp;gt;&lt;/code&gt;，例如：&lt;code&gt;luffy imagesize:7680x4320&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;x&lt;/code&gt; 是小写字母，不是乘号 &lt;code&gt;×&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;以像素为单位&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;透明背景的图片（免扣的 PNG 格式）
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;工具（Tools）&lt;/code&gt; - &lt;code&gt;颜色（Color）：透明（Transparent）&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;以图搜图
&lt;ul&gt;
&lt;li&gt;利用这个功能，寻找更高清的图片&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;访问 &lt;a href=&#34;https://www.google.com/advanced_image_search&#34;&gt;Google 高级图片搜索&lt;/a&gt;，自定义以下条件，可缩小搜索结果范围：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;关键词：“完全匹配” 、包含（OR）、不包含（-）&lt;/li&gt;
&lt;li&gt;宽高比：竖版、正方、横版、超大&lt;/li&gt;
&lt;li&gt;图片颜色：透明（PNG）、黑白、特定颜色……&lt;/li&gt;
&lt;li&gt;文件类型：GIF、SVG（适量）、JPG……&lt;/li&gt;
&lt;li&gt;使用权限：知识共享许可（CC0）、商业许可……&lt;/li&gt;
&lt;li&gt;安全搜索：是否包含露骨色情内容&lt;/li&gt;
&lt;li&gt;……&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;Unsplash&#34;&gt;&lt;a href=&#34;https://unsplash.com/&#34;&gt;Unsplash&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;无需登录即可下载如免费可商用的图片。&lt;/li&gt;
&lt;li&gt;只支持英文，胜在图片质量高。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;Pixabay&#34;&gt;&lt;a href=&#34;https://pixabay.com/zh/&#34;&gt;Pixabay&lt;/a&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;大而全的免费可商用的图片。&lt;/li&gt;
&lt;li&gt;可搜索矢量图。&lt;/li&gt;
&lt;li&gt;支持中文。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;电影搜索&#34;&gt;&lt;strong&gt;电影搜索&lt;/strong&gt;&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;现在影视，音乐资源全部推荐使用PT，更多PT使用技巧，参考&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;找电影&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Google 搜索：&lt;a href=&#34;https://www.google.com/search?q=%E7%BE%8E%E4%B8%BD%E4%BA%BA%E7%94%9F+%E7%B1%BB%E4%BC%BC%E7%94%B5%E5%BD%B1&#34;&gt;美丽人生 类似电影&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://movie.douban.com/top250&#34;&gt;豆瓣电影 Top 250&lt;/a&gt; 配合 &lt;a href=&#34;https://tingtalk.me/userscripts/&#34;&gt;油猴脚本&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;下电影&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.cupfox.com/&#34;&gt;茶杯狐 Cupfox&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.btfilm.cn/&#34;&gt;BTFILM 电影搜索&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.dy2018.com/&#34;&gt;电影天堂&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;下载软件：&lt;a href=&#34;https://tingtalk.me/windows/&#34;&gt;迅雷 5.8&lt;/a&gt; 或 &lt;a href=&#34;https://jianpian.com/&#34;&gt;荐片播放器&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;在线看电影&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.zxzj.me/&#34;&gt;在线之家&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://ddrk.me/&#34;&gt;低端影视&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;荐片播放器
&lt;ul&gt;
&lt;li&gt;号称专治迅雷被封链接&lt;/li&gt;
&lt;li&gt;免费高清视频：在线观看 &amp;amp; 可下载&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://api.rinhome.com/api/bt/jp-pc.exe&#34;&gt;点击下载 Windows 电脑版&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://api.rinhome.com/api/bt/jp.apk&#34;&gt;点击下载 Android 手机版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.cupfox.com/&#34;&gt;茶杯狐 Cupfox&lt;/a&gt;：搜索结果提供在线观看网址&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.btfilm.cn/hot.html?tag=%E8%B1%86%E7%93%A3%E9%AB%98%E5%88%86&amp;amp;sort=rank&amp;amp;playable=1&#34;&gt;BTFILM&lt;/a&gt;：搜索结果提供国内视频网站的在线播放资源（但是任何国内的资源都可能有删减）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;选购搜索&#34;&gt;选购搜索&lt;/h2&gt;
&lt;p&gt;理智看待评分，适合大众的，不一定适合你。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;亚马跌&lt;/p&gt;
&lt;p&gt;：一个选购参考网站，收集商品资讯，发表基于可信资料的意见。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;剔除营销词汇，展示核心信息。&lt;/li&gt;
&lt;li&gt;避开诋毁和吹捧，拒绝叫卖和流言。&lt;/li&gt;
&lt;li&gt;不接受原生广告（软文），&lt;a href=&#34;https://www.ymdie.com/archives/4194&#34;&gt;CPS 返利&lt;/a&gt; 和横幅广告是主要收入来源。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://m.fangxin.com/#/&#34;&gt;放心选&lt;/a&gt;：万物测评，理性消费；推荐使用「放心选」的微信小程序。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://daddylab.com/&#34;&gt;老爸评测&lt;/a&gt;：发现生活中看不见的危害，让孩子远离有毒有害物质。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://www.ccreports.com.cn/&#34;&gt;消费者报道&lt;/a&gt;：专注于消费品及服务比较测试的媒体。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://www.mingjian.cn/&#34;&gt;消费明鉴&lt;/a&gt;：「货比三家」领域的百科全书。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://www.guiderank.org/&#34;&gt;盖得排行&lt;/a&gt;：看品牌的美誉度；App 内置吃喝玩乐地图。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;町芒&lt;/p&gt;
&lt;p&gt;：目前主要做食品方面的评测。如何通过关键词搜索相应的文章：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;进入「町芒」的微信公众号（&lt;code&gt;dingmang2018&lt;/code&gt;），点击右上角的三个点 💬，即可看到搜索 🔍 入口。&lt;/li&gt;
&lt;li&gt;Google 搜索：&lt;code&gt;某个食品 + 町芒&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;企鹅吃喝指南：微信公众号 ID &lt;code&gt;qiechihe&lt;/code&gt;，找遍来自全世界的好东西，和你分享吃得到、喝得出的快乐。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;数码产品&#34;&gt;数码产品&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;何时买苹果：一个微信小程序，用理性的价格、挑正确的时间、在恰当的地点，选择合适自己的苹果产品。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://buyersguide.macrumors.com/&#34;&gt;MacRumors Buyer’s Guide&lt;/a&gt;：This page provides a product summary for each Apple model. The intent is to provide our best recommendations regarding current product cycles, and to provide a summary of currently available rumors for each model.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://versus.com/cn&#34;&gt;Versus&lt;/a&gt;：设计精美、全能的对比工具。除了对手机、相机、吸尘机等数码类的电子产品和生活用品进行对比，Versus 可以对比不同的国家、城市、大学在环境、人口、文化等方面的差异，在选择旅游目的地、规划旅行的时候会很有用。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.hotspot3d.com/&#34;&gt;Hotspot 3D&lt;/a&gt;：手机 3D 模型对比&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.rtings.com/&#34;&gt;RTINGS&lt;/a&gt;：如果你想从实际的需求和场景出发，找到一副适合自己的耳机、一台电视或者显示器，RTINGS 就可以帮你。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.acwifi.net/&#34;&gt;路由器交流&lt;/a&gt;：家用无线路由器评测。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.mi.com/&#34;&gt;小米商城&lt;/a&gt;：米家的产品，直男的选择。&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;电视&#34;&gt;电视&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;电视尺寸 = 观看距离 / 1.6（注：单位都是英寸，1 米大约等于 40 英寸）&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.rtings.com/tv/reviews/by-size/size-to-distance-relationship&#34;&gt;最佳观赏距离计算器（TV Size to Distance Calculator）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.bilibili.com/video/av84624130&#34;&gt;华为智慧屏、索尼和三星 65 英寸电视（￥6599 至 ￥6999）横评 - 先看评测&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;苹果产品&#34;&gt;苹果产品&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://guohe.group/&#34;&gt;果核Group&lt;/a&gt;：用好苹果产品，一个「果核」就够了。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://buyersguide.macrumors.com/&#34;&gt;MacRumors&lt;/a&gt;：要不要现在买 iPhone？让它告诉你。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;笔记本电脑&#34;&gt;笔记本电脑&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;微信搜索公众号「笔吧评测室」（ID：bibacps），查看历史文章「小白必看：笔记本电脑选购指南」。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.notebookcheck.net/Laptop-Buying-Guide-Tool.13212.0.html&#34;&gt;Laptop Buying Guide Tool - Notebookcheck&lt;/a&gt;：找出符合自己需求的笔记本。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;京价保&#34;&gt;京价保&lt;/h3&gt;
&lt;p&gt;作为京东优质老客户，这个价保工具（浏览器插件）为我省了不少钱。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;官方网站&lt;/strong&gt;：&lt;a href=&#34;https://jjb.im/&#34;&gt;jjb.im&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;价格保护&lt;/strong&gt;：全天候监控价格变化，降价自动价保&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;自动签到&lt;/strong&gt;：支持京东会员、京东金融、京东支付&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;价格走势图&lt;/strong&gt;：监控商品价格历史，了解价格走势&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;关联阅读&lt;/strong&gt;：&lt;a href=&#34;https://sspai.com/post/41588&#34;&gt;装上这款 Chrome 插件，去京东购物不用担心「刚买就降价」了 - 少数派&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;参考资料：&lt;a href=&#34;https://sspai.com/post/56338&#34;&gt;买东西前用这些工具「货比三家」，让你不花「冤枉钱」- 少数派&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;其他搜索&#34;&gt;其他搜索&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;数字生活&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AppSo
&lt;ul&gt;
&lt;li&gt;是一个让手机更好用的数字生活社区。它让所有人轻松发现优秀（颜值高、功能好）的移动互联网产品，你还能了解到有关智能手机、个人电脑等科技产品的使用技巧，从此拥抱更有品质更优雅的数字生活。&lt;/li&gt;
&lt;li&gt;遇到数字生活上的疑虑，我会在 AppSo（ID：appsolution）微信公众号的历史文章中搜搜看。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://sspai.com/&#34;&gt;少数派&lt;/a&gt;：高效工作，品质生活。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://topbook.cc/overview&#34;&gt;Topbook&lt;/a&gt;：高效生活视频书。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;其他领域&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://jikipedia.com/&#34;&gt;小鸡词典&lt;/a&gt;：查网络流行语。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://cpdc.chinapost.com.cn/web/&#34;&gt;中国邮政名址网&lt;/a&gt;：查邮编。&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.jiumodiary.com/&#34;&gt;鸠摩搜书&lt;/a&gt;：查找免费的英文电子书。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;主动提问&#34;&gt;主动提问&lt;/h2&gt;
&lt;p&gt;在互联网上找不到想要信息时，可以尝试在 &lt;a href=&#34;https://www.zhihu.com/&#34;&gt;知乎&lt;/a&gt; 或者 &lt;a href=&#34;https://www.quora.com/&#34;&gt;Quora&lt;/a&gt; 上提问。&lt;/p&gt;
&lt;p&gt;让我们善用互联网，成为合格的「数字公民」。&lt;/p&gt;
&lt;h2 id=&#34;信息素养&#34;&gt;信息素养&lt;/h2&gt;
&lt;p&gt;英文翻译是 Information literacy。&lt;/p&gt;
&lt;p&gt;大胆假设，小心求证，实事求是。&lt;/p&gt;
&lt;h3 id=&#34;标明来源&#34;&gt;标明来源&lt;/h3&gt;
&lt;p&gt;如果讨论的事实本身是错的，得出的结论也就站不住脚。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🤐没有信源：只注明「有关专家表明」而不给出信源。请勿传播此类无法考证的文章。&lt;/li&gt;
&lt;li&gt;🤔一个信源：查看此信源是否可靠。多看来自知名英文媒体，但也要辩证看待。&lt;/li&gt;
&lt;li&gt;😍多个信源：对于涉及重大公共利益的新闻，若要认定这个事实，至少需要两个独立的消息源互为验证（交叉验证）。注意，第一个信源提供的第二个信源，不构成独立信源。否则，只是消息或观点，而不是事实。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;使用逻辑&#34;&gt;使用逻辑&lt;/h3&gt;
&lt;h4 id=&#34;包含关系&#34;&gt;包含关系&lt;/h4&gt;
&lt;p&gt;不要以点代面（以偏概全）去阐述观点，那是思维偷懒的表现：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;因为：他欺骗了&lt;/li&gt;
&lt;li&gt;然而：他是男人&lt;/li&gt;
&lt;li&gt;所以：男人都是骗子&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;超集的定义才适用于子集：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;因为：张三是中国人&lt;/li&gt;
&lt;li&gt;然而：中国位于地球&lt;/li&gt;
&lt;li&gt;所以：张三是地球人&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;幸存者偏差&#34;&gt;&lt;a href=&#34;https://zh.wikipedia.org/zh/%E5%80%96%E5%AD%98%E8%80%85%E5%81%8F%E8%AA%A4&#34;&gt;幸存者偏差&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;因为死人不会说话（不能从由死者／淘汰者／离场者获得信息），当信息仅来自幸存者（成功者）时，得出的结论就会与实际情况大相径庭。兼听则明，偏信则暗，不要「只看贼吃肉，不看贼挨揍。」&lt;/p&gt;
&lt;p&gt;视频讲解：&lt;a href=&#34;https://www.bilibili.com/video/av25457221/&#34;&gt;成功学有用吗？幸存者偏差，一个活着就该明白的事 - 李永乐&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;不含情绪&#34;&gt;不含情绪&lt;/h3&gt;
&lt;p&gt;新闻只提供事实，没有情绪，所以，远离标题党和充满感叹号的文章，珍惜有限的生命时间。&lt;/p&gt;
&lt;h2 id=&#34;自建搜索引擎&#34;&gt;自建搜索引擎&lt;/h2&gt;
&lt;p&gt;这里整理了一下所使用的各种工具和方法，包括AI助手，RSS搜索引擎，邮件网关，代码搜索，笔记管理，音视频图书等等！&lt;/p&gt;
&lt;p&gt;参考前面一篇文章 &lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;参考-致谢&#34;&gt;参考&amp;amp;致谢&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.freecodecamp.org/chinese/news/how-to-google-like-a-pro-10-tips-for-effective-googling/&#34;&gt;如何像专家一样高效使用 Google 搜索&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://zhuanlan.zhihu.com/p/25525658&#34;&gt;实打实的谷歌搜索技巧&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tingtalk.me/search-tips/&#34;&gt;想要更高效地找到信息，你需要掌握这些搜索技巧&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;后话：&#34;&gt;后话：&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;看完是否感觉对完全没有利用好传统搜索引擎？在信息过载时代，我们要做信息的主人，而不是信息的奴隶！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;附赠&#34;&gt;附赠&lt;/h2&gt;
&lt;h3 id=&#34;颓废文学选集&#34;&gt;颓废文学选集&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;明知山有虎，不去明知山&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;生活将我反复捶打，肉质竟变得筋道Q弹&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;风雪压我两三年，老寒腿加关节炎&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;只要我是一坨屎，就没人敢采我头上&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;莫欺少年穷，莫欺中年穷，莫欺老年穷，死者为大&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;天堂有路我不走，那我去哪儿&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;我并不是无路可走，我还有死路一条&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;只要思想不滑坡，困难总比办法多&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;没有什么困难时战胜不了我的&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;阎王要我三更死，我两更就先去报道&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="教程" />
        <category term="tools" />
        <category term="google" />
        <updated>2023-07-22T12:14:16.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/8f152670/</id>
        <title>如何创建属于自己的私人资料库与私人搜索引擎</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/8f152670/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;平时积累了很多私人工具和资料，可以极大的提高工作效率，并丰富个人知识图谱。这里整理了一下所使用的各种工具和方法，包括AI助手，RSS搜索引擎，邮件网关，代码搜索，笔记管理，论文搜索下载，音视频图书管理仓库等等！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2023/03/24/20230324203120.webp&#34; alt=&#34;Search&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;智能AI搜索引擎&#34;&gt;智能AI搜索引擎&lt;/h2&gt;
&lt;h3 id=&#34;ChatGPT-Web&#34;&gt;ChatGPT Web&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;OpenAI 公司出品的商业对话AI，是目前最好的对话智能AI&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://chat.17lai.site&#34;&gt;https://chat.17lai.site&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2023/03/17/20230317120556.webp&#34; alt=&#34;chatgpt-web&#34;&gt;&lt;/p&gt;

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/1336c869/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/ai.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/1336c869/&#34;&gt;中国区注册ChatGPT并使用全流程图解教程&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;OpenAI最近推出强大的ChatGPT功能，功能异常强大，号称要颠覆很多行业。但是其限制还不支持中国用户注册！但是还是有办法绕过的，本文将介绍其中的方法和工具！&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
&lt;h3 id=&#34;ChatGLM-6B&#34;&gt;ChatGLM-6B&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;ChatGLM-6B是一个中英双语开源大模型，最低可在6G显存上运行&lt;/p&gt;
&lt;p&gt;本地 AI 模型&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;github-card-container&#34; style=&#34;position: relative; min-height: 150px;&#34;&gt;
  &lt;div class=&#34;github-card&#34; data-user=&#34;THUDM&#34; data-repo=&#34;ChatGLM-6B&#34;&gt;&lt;/div&gt;
  &lt;noscript&gt;
    &lt;div class=&#34;github-card-error&#34;&gt;
      JavaScript is required to load GitHub Cards
    &lt;/div&gt;
  &lt;/noscript&gt;
&lt;/div&gt;
    
&lt;h2 id=&#34;本地AI&#34;&gt;本地AI&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://ollama.com/&#34;&gt;ollama&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://hyperlink.nexa.ai/&#34;&gt;Hyperlink&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/pinokiocomputer/pinokio&#34;&gt;pinokio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/jianchang512/pyvideotrans&#34;&gt;pyvideotrans&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;… etc&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;在线AI&#34;&gt;在线AI&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.deepseek.com/&#34;&gt;Deepseek&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://claude.ai/&#34;&gt;Claude&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://chatgpt.com/&#34;&gt;chatGPT&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://gemini.google.com/&#34;&gt;Google Gemini&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;grok.com&#34;&gt;Grok&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.perplexity.ai/&#34;&gt;perplexity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://kimi.com&#34;&gt;&lt;strong&gt;Kimi&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tongyi.com&#34;&gt;&lt;strong&gt;通义千问&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://yuanbao.tencent.com&#34;&gt;&lt;strong&gt;腾讯元宝&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://aistudio.google.com&#34;&gt;&lt;strong&gt;Google AI Studio&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://doubao.com&#34;&gt;&lt;strong&gt;豆包&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;… etc&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;RSS-搜索引擎&#34;&gt;RSS 搜索引擎&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;订阅你感兴趣的博客内容，以这些内容为基础，创建一个专有的，特定领域的私人搜索引擎！&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://rss.17lai.fun&#34;&gt;https://rss.17lai.fun&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531105612.webp&#34; alt=&#34;TTRSS界面&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2023/03/24/20230324203824.webp&#34; alt=&#34;TTRSS 搜索&#34;&gt;&lt;/p&gt;

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/f4926c88/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/rss.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;RSS是一种消息来源的格式规范，网站可以按照这种格式规范提供文章的标题、摘要、全文等信息给订阅用户，用户可以通过订阅不同网站 RSS 链接的方式将不同的信息源进行聚合，在一个工具里阅读这些内容&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
&lt;h2 id=&#34;私人聚合搜索引擎&#34;&gt;私人聚合搜索引擎&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;SearX是一个开源的、去中心化的元搜索引擎。它可以同时查询多个搜索引擎、网站和数据库，从而提供更全面、更准确的搜索结果。&lt;/p&gt;
&lt;p&gt;与传统的搜索引擎不同，SearX不会收集用户的搜索历史、IP地址或其他个人信息。它可以被部署在自己的服务器上，用户可以通过访问自己的SearX实例来进行搜索，从而更好地保护隐私。&lt;/p&gt;
&lt;p&gt;SearX支持多种搜索引擎和数据库，包括Google、Bing、DuckDuckGo、Wikipedia、StackExchange等，用户可以根据自己的需求选择查询哪些搜索引擎和数据库。此外，SearX还支持自定义搜索源，用户可以添加自己喜欢的网站或搜索引擎作为搜索源。&lt;/p&gt;
&lt;p&gt;SearX还提供了一些高级功能，例如结果过滤、排序、语言过滤、时间范围过滤等，以帮助用户更精确地找到所需的信息。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://so.17lai.site&#34;&gt;https://so.17lai.site&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2023/03/24/20230324203824-1.webp&#34; alt=&#34;SearX&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;邮件搜索引擎&#34;&gt;邮件搜索引擎&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Foxmail：单机邮件管理，基本够用&lt;/li&gt;
&lt;li&gt;手机邮件客户端：基本邮件操作，一些高级功能缺失&lt;/li&gt;
&lt;li&gt;Postfix：Postfix是一款基于UNIX系统的邮件传输代理软件，它采用C语言编写，支持多线程、SMTP、POP3、IMAP等协议。&lt;/li&gt;
&lt;li&gt;Exim：Exim也是一款邮件传输代理软件，它采用C语言编写，支持多线程、SMTP、POP3、IMAP等协议，而且具有灵活的配置和可扩展性。&lt;/li&gt;
&lt;li&gt;Sendmail：Sendmail是一款历史悠久的邮件传输代理软件，也是一款较为著名的开源软件。它采用C语言编写，支持SMTP、POP3等协议，但是相对于Postfix和Exim来说，它的配置较为繁琐。&lt;/li&gt;
&lt;li&gt;OpenSMTPD：OpenSMTPD是一款比较新的邮件传输代理软件，它采用C语言编写，支持SMTP、POP3、IMAP等协议，而且配置比较简单，适合初学者使用。&lt;/li&gt;
&lt;li&gt;Haraka：Haraka是一款基于Node.js的邮件传输代理软件，它采用JavaScript编写，支持SMTP协议，而且具有高度的可定制性和插件扩展性。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;代码管理与搜索引擎&#34;&gt;代码管理与搜索引擎&lt;/h2&gt;

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/ab63eb8f/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/devops.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/ab63eb8f/&#34;&gt;自建全套开源Devops开发系统&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;目标：单节点，以最低成本，最低消耗，使用开源软件实现一个可用的DevOps！满足中小企业的研发、测试、运维需求。&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/ab63eb8f/&#34;&gt;自建全套开源Devops开发系统&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/d32a07a7/&#34;&gt;Git介绍以及分支模型图解&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/39563241/&#34;&gt;三万字无坑搭建基于Docker+K8S+GitLab/SVN+Jenkins+Harbor持续集成交付环境&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/3437994a/&#34;&gt;DevOps系列—【Jenkinsfile+Dockerfile+nginx+vue】&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/f4c3ad41/&#34;&gt;项目开发管理工具推荐&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/acc13b70/&#34;&gt;Gitlab的安装及使用教程完全版&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/d08eb7b/&#34;&gt;Gitlab的安装及使用&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/acc13b70/&#34;&gt;&lt;strong&gt;Gitlab的安装及使用教程完全版&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/29a820b3/&#34;&gt;破解Gitlab EE&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/d08eb7b/&#34;&gt;Gitlab的安装及使用&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;/posts/1879721e/&#34;&gt;CI/CD与Git Flow与GitLab&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;笔记管理与搜索&#34;&gt;笔记管理与搜索&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;平时不积累，用时方嫌少！&lt;/p&gt;
&lt;p&gt;建立自己的知识库，就显得那么重要了&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/a8535f26/&#34;&gt;完美笔记进化论&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;经历了很长时间，使用了各种各样的方案，最终选择了一种相对完美的方式。docker私有部署运行的joplin，使用markdown语法，github作为图床，picgo作为图像自动上传后端，pypora作为MD编辑器，Snipaste作为截图工具。后备gitlab ee selfhost备份，自建图床VPS多线负载均衡。cloudflare partner cdn加速，jsdelivr加速。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pigo图床搭建与配置&lt;/li&gt;
&lt;li&gt;Joplin教程&lt;/li&gt;
&lt;li&gt;Snipaste截图工具&lt;/li&gt;
&lt;li&gt;Typora 作为Markdown编辑器最强&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/a8535f26/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/wiznote.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/a8535f26/&#34;&gt;完美笔记进化论&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;wiznote docker版作为笔记管理搜索工具，typora作为markdown编辑器，只使用markdown格式笔记，Picgo作为图上上传工具，github作为图像图床，Snippaste作为截屏工具。一起组成笔记工具链。整体免费，满足selfhost， 富文本，多平台，版本管理，目录管理，可搜索，对图像友好的苛刻要求，超越市面所有产品，wiznote 还可以对外网提供服务。&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.17lai.fun/posts/e6086437/&#34;&gt;Joplin入门指南&amp;amp;实践方案&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Joplin和使用&lt;/li&gt;
&lt;li&gt;Joplin同步与备份&lt;/li&gt;
&lt;li&gt;Joplin导入与导出&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.17lai.fun/posts/45f878cd/&#34;&gt;替代Evernote免费开源笔记Joplin-网盘同步笔记历史版本Markdown可视化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Joplin安装使用，调用外部编辑器，网盘同步等等&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/92d347d6/&#34;&gt;Joplin 插件以及其Markdown语法。All in One!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Joplin简明教程&lt;/li&gt;
&lt;li&gt;markdown语法简明教程&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e3ee7f8b/&#34;&gt;Joplin 插件使用推荐&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;教你用各种插件打造一个强大的笔记工具。&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;如何部署自己私有的为知笔记。&lt;/li&gt;
&lt;li&gt;其实博主更推荐私有部署joplin&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;电子图书下载&#34;&gt;电子图书下载&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;教程&lt;/strong&gt;： &lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Z-Library&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;最近Z-Library被查封，官网大部分下载服务都用不了&lt;/p&gt;
&lt;p&gt;可以使用暗网，目前可以进行电子书下载，不过有点门槛，自行搜索研究一下如何使用tor浏览器即可。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;需要配合洋葱浏览器使用&lt;/strong&gt;，洋葱浏览器（Tor Browser）下载官网：&lt;a href=&#34;https://www.torproject.org/&#34;&gt;https://www.torproject.org/&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;Z-Library暗网地址&#34;&gt;Z-Library暗网地址&lt;/h4&gt;
&lt;p&gt;普通浏览器无法打开&lt;/p&gt;
&lt;p&gt;暗网地址1：&lt;a href=&#34;http://zlibrary24tuxziyiyfr7zd46ytefdqbqd2axkmxm4o5374ptpc52fad.onion/&#34;&gt;http://zlibrary24tuxziyiyfr7zd46ytefdqbqd2axkmxm4o5374ptpc52fad.onion/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;暗网地址2：&lt;a href=&#34;http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/&#34;&gt;http://bookszlibb74ugqojhzhg2a63w5i2atv5bqarulgczawnbmsb6s6qead.onion/&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;论文搜索下载&#34;&gt;论文搜索下载&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;https://www.zotero.org/&#34;&gt;zotero&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://zotero-chinese.com/user-guide/why-use-zotero&#34;&gt;zetero 中文社区&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://zhuanlan.zhihu.com/p/669287007&#34;&gt;zotero入门教程&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;sci-hub&lt;/strong&gt; &lt;a href=&#34;https://sci-hub.se/&#34;&gt;https://sci-hub.se/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;以下是主要中文文献网站的综合指南，涵盖免费与付费资源，结合权威性、覆盖范围和访问方式，并标注免费可用的平台：&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;📚-权威付费平台（需机构订阅或个人付费）&#34;&gt;📚 &lt;strong&gt;权威付费平台（需机构订阅或个人付费）&lt;/strong&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;中国知网 (CNKI)&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;地位&lt;/strong&gt;：国内最大综合性学术数据库，覆盖95%以上中文期刊。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;资源&lt;/strong&gt;：期刊、博硕论文、会议、专利等（文献量超2亿篇）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;限制&lt;/strong&gt;：个人用户按篇付费（15-25元/篇），学校或机构订阅为主。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;免费替代&lt;/strong&gt;：iData镜像站（每日限1-2篇免费下载）。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;万方数据&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;整合期刊、学位、会议、专利等资源，期刊库每周更新。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;特点&lt;/strong&gt;：文档清晰度高，但检索需精准技巧。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;维普数据库 (VIP)&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;专注科技期刊（1989年至今），按《中图法》分类。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;不足&lt;/strong&gt;：部分领域更新较慢。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&#34;🆓-免费开放平台（无需订阅）&#34;&gt;🆓 &lt;strong&gt;免费开放平台（无需订阅）&lt;/strong&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;国家哲学社会科学文献中心&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a href=&#34;http://www.ncpssd.org&#34;&gt;http://www.ncpssd.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;资源&lt;/strong&gt;：社科类期刊为主，注册后可免费下载全文。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;特点&lt;/strong&gt;：国家推出，文献较新但核心期刊覆盖率低于知网。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;PubScholar公益学术平台&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a href=&#34;https://pubscholar.cn&#34;&gt;https://pubscholar.cn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;资源&lt;/strong&gt;：整合中科院资源，开放8,000万篇全文（含论文、专利）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;亮点&lt;/strong&gt;：每日更新，含中科院学位论文、预印本等特色数据。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;中国国家数字图书馆&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a href=&#34;http://www.nlc.cn&#34;&gt;http://www.nlc.cn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;资源&lt;/strong&gt;：图书、古籍、期刊（需实名注册）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;限制&lt;/strong&gt;：版权期内图书仅可读前两章。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;4&#34;&gt;
&lt;li&gt;&lt;strong&gt;汉斯出版社&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a href=&#34;http://www.hanspub.org&#34;&gt;http://www.hanspub.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;资源&lt;/strong&gt;：125本开源中文学术期刊，支持PDF/HTML免费下载。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&#34;🔍-特色资源与工具&#34;&gt;🔍 &lt;strong&gt;特色资源与工具&lt;/strong&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Scholaread 靠岸学术&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;网址&lt;/strong&gt;：&lt;a href=&#34;https://www.scholaread.cn&#34;&gt;https://www.scholaread.cn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;功能&lt;/strong&gt;：&lt;/li&gt;
&lt;li&gt;集成知网、Sci-Hub等引擎入口，一键获取文献。&lt;/li&gt;
&lt;li&gt;AI辅助阅读（翻译、图表解析、速览模式）。&lt;/li&gt;
&lt;li&gt;免费使用，支持跨平台同步。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;公共图书馆服务&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;中国国家图书馆&lt;/strong&gt;：实名注册后免费使用维普、万方等数据库。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;地方图书馆&lt;/strong&gt;：如广州图书馆、杭州图书馆提供文献传递服务。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;开放获取期刊平台&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;DOAJ&lt;/strong&gt;：全球开放获取期刊检索（含310种中文期刊）。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cnplinker&lt;/strong&gt;：收录1.85万种OA期刊，支持免费下载。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&#34;💎-免费资源获取技巧&#34;&gt;💎 &lt;strong&gt;免费资源获取技巧&lt;/strong&gt;&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;预印本平台&lt;/strong&gt;：&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;中国预印本服务系统&lt;/strong&gt;：获取未正式发表的科技论文。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SINDAP&lt;/strong&gt;：全球预印本一站式检索（74万篇）。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;2&#34;&gt;
&lt;li&gt;&lt;strong&gt;文献传递服务&lt;/strong&gt;：&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;通过全国图书馆参考咨询联盟申请，邮箱接收全文。&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&#34;3&#34;&gt;
&lt;li&gt;&lt;strong&gt;高校资源利用&lt;/strong&gt;：&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;毕业校友可尝试通过母校图书馆的远程访问系统（如VPN）登录知网等库。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&#34;📊-平台选择建议&#34;&gt;📊 &lt;strong&gt;平台选择建议&lt;/strong&gt;&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;strong&gt;需求场景&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;推荐平台&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;原因&lt;/strong&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;社科文献下载&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;国家哲学社会科学文献中心&lt;/td&gt;
&lt;td&gt;免费、更新快、注册简单&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;科技论文与专利&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;PubScholar&lt;/td&gt;
&lt;td&gt;中科院资源，全文开放量大&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;一站式检索&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Scholaread靠岸学术&lt;/td&gt;
&lt;td&gt;集成多引擎+AI阅读工具&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;历史文献/古籍&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;中国国家数字图书馆&lt;/td&gt;
&lt;td&gt;古籍全文免费，资源独特&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr&gt;
&lt;blockquote&gt;
&lt;p&gt;提示：知网虽为最大中文库，但免费替代方案已足够满足多数需求。优先使用 &lt;strong&gt;PubScholar&lt;/strong&gt;（综合性强）、&lt;strong&gt;国家哲社文献中心&lt;/strong&gt;（社科专精）及 &lt;strong&gt;Scholaread&lt;/strong&gt;（检索+阅读工具）可降低获取成本。若需下载学位论文等深度资源，建议通过公共图书馆的文献传递服务申请。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;图书、音乐、视频三剑客！&#34;&gt;图书、音乐、视频三剑客！&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;结构化自己的图书，音乐，和视频！&lt;/p&gt;
&lt;/blockquote&gt;

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/db7bf49b/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/book.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;音视频，音乐和图书管理全过程自动化解决方案框架图解！结构化你的音视频、音乐和图书资源。所有过程一张图搞定！&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/dc1c8194/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/book.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆--出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;图书管理员似乎是个非常有前途的职业，远的有孔子，游学之前当图书管理员，近的有本朝开国毛教员，也当了很长时间图书管理员。我们也可以自己做个私人电子图书馆，当个图书管理员，说不定很有前途？&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/3847ad58/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/music.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;音乐文件则是将歌名、歌手、专辑、发行时间、歌词、封面图等信息写入文件标签，称为ID3 Tag 。它能够在MP3中附加曲子的演出者、作者以及其它类别资讯，方便众多乐曲的管理。&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/2b9325d0/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/music.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;私人在线音乐服务器搭建与使用介绍！Mstream Docker 部署， rclone 挂载 webdav 网盘。 cloudflare parterner加速&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/e6d40157/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/emby.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;tinyMediaManager是最好用的视频刮削工具，可以刮削电影，动画，电视剧。使用TinyMediaManager生成nfo元数据文件，多媒体软件解析生成海报墙展示丰富的影片信息，配合Emby，Plex使用体验绝佳&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    

    &lt;div class=&#34;vkr-url-wrapper&#34;&gt;
        &lt;a href=&#34;/posts/9912bd5d/&#34;&gt;&lt;img class=&#34;avatar&#34; src=&#34;/medias_webp/cover/emby.webp&#34;&gt;&lt;/a&gt;
        &lt;div class=&#34;desc-wrapper&#34;&gt;
            &lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;
            &lt;hr /&gt;
            &lt;div class=&#34;desc&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程。jackett 作为种子源，sonarr剧集管理，bt下载，qbittorrent主力下载，使用iyuu转移辅种，emby，jellyfin做海报墙，sunfinder自动下载字幕。结合本地DNS管理，DNS去广告，Nginx反向代理去端口访问，形成一个完整解决方案。&lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
    
&lt;h2 id=&#34;参考-致谢&#34;&gt;参考&amp;amp;致谢&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;广大开源贡献&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="docker" />
        <category term="tools" />
        <category term="search" />
        <updated>2023-03-24T11:37:13.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/f4926c88/</id>
        <title>RSS的使用与Tiny Tiny RSS Selfhost自建</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/f4926c88/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;RSS 是对你信任的网站的订阅，微博是对你信任的人的订阅，即刻是对你感兴趣的话题的订阅。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531102733.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;RSS-的介绍&#34;&gt;RSS 的介绍&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;维基百科&lt;/strong&gt;&lt;a href=&#34;https://zh.wikipedia.org/wiki/RSS&#34;&gt;zh.wikipedia.org/wiki/RSS&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;RSS（简易信息聚合）是一种消息来源格式规范，用以聚合经常发布更新数据的网站，例如博客文章、新闻、音频或视频的网摘。RSS文件（或称做摘要、网络摘要、或频更新，提供到频道）包含全文或是节录的文字，再加上发布者所订阅之网摘数据和授权的元数据。&lt;/p&gt;
&lt;p&gt;社交媒体混乱的时间线、聚合阅读工具烦人的算法推荐，都让我们无法高效地获取需要的信息。RSS 将信息的选择权交还给了用户，但 RSS 并不是什么新玩意，20多年前就有了。RSS可以让我们高效的获取感兴趣的信息。&lt;/p&gt;
&lt;p&gt;互联网的信息是庞杂的，甚至可以说是无限的，随着我们关注量的上升，我们关注的内容会越来越多，可能每天要去打开几十几百个网站或APP。手机里的有些 APP，收藏夹里的某些网站，也许就是为了看一小部分的内容，但是我们不得不装上它。通过 RSS 我们就可以将它们聚合在一起，还免受广告和追踪的困扰。也许对于一些内容还有即时推送的要求，有些网站和APP可能并没有推送，但是我们又需要即时收到推送（比如停水通知），这时如果通过 RSS 联动 IFTTT 便可以做到即时推送。可见 RSS 可以有提高信息获取效率、时效性高、便于管理、无广告等优点。&lt;/p&gt;
&lt;h2 id=&#34;RSS工具&#34;&gt;RSS工具&lt;/h2&gt;
&lt;h3 id=&#34;RSSHub&#34;&gt;&lt;a href=&#34;https://github.com/DIYgod/RSSHub&#34;&gt;RSSHub&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://docs.rsshub.app&#34;&gt;RSSHub docs&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;万物皆可 RSS&lt;/p&gt;
&lt;p&gt;RSSHub 是一个轻量、易于扩展的 RSS 生成器，可以给任何奇奇怪怪的内容生成 RSS 订阅源&lt;/p&gt;
&lt;p&gt;移动端可以使用 App &lt;a href=&#34;https://github.com/Cay-Zhang/RSSBud&#34;&gt;RSSBud &lt;/a&gt;(iOS) 与 &lt;a href=&#34;https://github.com/LeetaoGoooo/RSSAid&#34;&gt;RSSAid &lt;/a&gt;(Android) 制作&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;在使用一段时间后你可能会发现有很多网站和想订阅的内容没有提供 RSS，因为 RSS 不利于投放广告、收集数据等商业行为，越来越多的网站不再提供 RSS，甚至还反爬虫。幸好，我们还有 &lt;a href=&#34;https://github.com/DIYgod/RSSHub&#34;&gt;RSSHub&lt;/a&gt; 项目（反爬严格的网站也需要自建，RSSHub 文档有自建教程）。RSSHub 项目由 &lt;a href=&#34;https://github.com/DIYgod&#34;&gt;DIYgod&lt;/a&gt; 发起，经过许多开发者一年多的活跃开发，现在已经支持很多网站的 RSS 输出。具体支持那些网站可以查阅&lt;a href=&#34;https://docs.rsshub.app/&#34;&gt;文档&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531104157.webp&#34; alt=&#34;RSSHUB&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;RSSHub-Radar&#34;&gt;RSSHub Radar&lt;/h3&gt;
&lt;p&gt;RSSHub 项目，作者开发了相应的浏览器插件 – RSSHub Radar。浏览器插件可以帮助你快速发现和订阅当前网站 RSS ，RSSHub 项目网站上也提供了很多可以直接拿来用的方式，例如订阅 B 站某 UP 主的投稿等，具体的请参看 &lt;a href=&#34;https://docs.rsshub.app/social-media.html&#34;&gt;https://docs.rsshub.app/social-media.html&lt;/a&gt; 后食用。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531104112.webp&#34; alt=&#34;例如blog.17lai.site支持的订阅&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;Tiny-Tiny-RSS&#34;&gt;&lt;a href=&#34;https://tt-rss.org/&#34;&gt;Tiny Tiny RSS&lt;/a&gt;&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;可以Selfhost部署的RSS聚合客户端，支持多用户注册。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;FEEDX&#34;&gt;FEEDX&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://feedx.net/&#34;&gt;FEEDX&lt;/a&gt; 是一个个人站，主打一些网站的全文 RSS，但质量上乘，没有 RSS 的话留言站长也会考虑做 RSS。&lt;/p&gt;
&lt;h3 id=&#34;与其他-APP-联动&#34;&gt;与其他 APP 联动&lt;/h3&gt;
&lt;h4 id=&#34;IFTTT&#34;&gt;IFTTT&lt;/h4&gt;
&lt;blockquote&gt;
&lt;p&gt;IFTTT，是一个新生的网络服务平台，通过其他不同平台的条件来决定是否执行下一条命令。即对网络服务通过其他网络服务作出反应。IFTTT得名为其口号“if this then that”。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;维基百科&lt;/strong&gt;&lt;a href=&#34;https://zh.wikipedia.org/wiki/IFTTT&#34;&gt;zh.wikipedia.org/wiki/IFTTT&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://ifttt.com/&#34;&gt;IFTTT&lt;/a&gt; 是一款可玩性很高的软件，其中便包含着 RSS Feed（有简单的关键词过滤功能），可以做到停水通知（×××有更新…）发送邮件或通知等功能。&lt;/p&gt;
&lt;h4 id=&#34;Telegram-bot&#34;&gt;Telegram bot&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;https://telegram.org/&#34;&gt;Telegram&lt;/a&gt; 是一款国外的即时通讯聊天工具，除了加密、简洁流畅、跨平台、消息记录永久保存等优点外，我最喜欢的还是 Telegram bot 的功能。Telegram 里有各种各样的 bot，可以满足许多的需求，比如 十分钟邮箱、油管下载、听歌等 bot，RSS 订阅 bot 也十分多（IFTTT 同样有 Telegram bot）。这里就推荐一款最近才出现在眼前的 RSS bot：&lt;a href=&#34;https://github.com/indes/flowerss-bot&#34;&gt;flowerss bot&lt;/a&gt;。优点是可以将 RSS 内容转换成 telegraph 来支持 Telegram 的应用内 instant view（即时预览用过的都说好！），还可以为 Group 和 Channel 订阅 RSS 消息。支持 Docker 部署。&lt;/p&gt;
&lt;p&gt;RSS 也许还有更多有趣好玩的方式，期待更多的骚操作被广大网友发现&lt;/p&gt;
&lt;h2 id=&#34;Tiny-Tiny-RSS-Selfhost-搭建&#34;&gt;&lt;a href=&#34;https://tt-rss.org/&#34;&gt;Tiny Tiny RSS&lt;/a&gt; Selfhost 搭建&lt;/h2&gt;
&lt;h3 id=&#34;搭建要求&#34;&gt;搭建要求&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;一台服务器（我是 Debian 10,以它为例），能连上外网最好&lt;/li&gt;
&lt;li&gt;知道 Linux 基本命令&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;安装方式&#34;&gt;安装方式&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;传统方式安装，通过 git clone 的方式安装 TTRSS，这种方式安装比较慢，而且难度比较大，这里不介绍这种方式，如果有兴趣的话可以去&lt;a href=&#34;https://git.tt-rss.org/fox/tt-rss/wiki/InstallationNotes&#34;&gt;官方 wiki&lt;/a&gt; 瞅瞅。&lt;/li&gt;
&lt;li&gt;Docker 安装，可以将 Docker 看作 虚拟机，但是又有占用小、启动快等优点，这里采用的是 @HenryQW 的通过 docker-compose 部署。&lt;a href=&#34;https://ttrss.henry.wang/zh/&#34;&gt;戳这里查看文档&lt;/a&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;开始安装&#34;&gt;开始安装&lt;/h3&gt;
&lt;h4 id=&#34;安装-Docker&#34;&gt;安装 Docker&lt;/h4&gt;
&lt;p&gt;首先升级系统到最新&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;apt update &amp;amp;&amp;amp; apt upgrade&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;可以选择使用一键脚本安装 Docker，优点是方便快速，缺点是有可能不稳定，&lt;strong&gt;如果使用此方法运行下面的命令后跳过后面的步骤直接到下一步&lt;/strong&gt;。想一步步安装的请无视。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;curl https:&amp;#x2F;&amp;#x2F;get.docker.com&amp;#x2F; | sh&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;然后安装一些软件包使 &lt;code&gt;apt&lt;/code&gt; 支持 https&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;apt install \
  apt-transport-https \
  ca-certificates \
  curl \
  gnupg2 \
  software-properties-common&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;添加 Docker 官方的 GPG 密钥&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;curl -fsSL https:&amp;#x2F;&amp;#x2F;download.docker.com&amp;#x2F;linux&amp;#x2F;debian&amp;#x2F;gpg | sudo apt-key add -&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;添加 Docker CE 稳定版的库（&lt;code&gt;nightly&lt;/code&gt;、&lt;code&gt;test&lt;/code&gt; 版本可通过替换 &lt;code&gt;stable&lt;/code&gt; 实现），这里是 &lt;code&gt;amd64&lt;/code&gt; 架构的，其他架构自行替换。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;sudo add-apt-repository \
  &amp;quot;deb [arch&amp;#x3D;amd64] https:&amp;#x2F;&amp;#x2F;download.docker.com&amp;#x2F;linux&amp;#x2F;debian \
  $(lsb_release -cs) \
  stable&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;接下来更新 &lt;code&gt;apt&lt;/code&gt; 包索引&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;apt update&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;安装最新的 Docker CE 和 containerd（非必选）&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;apt install docker-ce docker-ce-cli containerd.io&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;测试 docker 是否安装成功&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker run hello-world&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;将 Docker 加入开机自启&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;systemctl enable docker&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531110036.webp&#34; alt=&#34;成功运行示意图&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;安装-docker-compose&#34;&gt;安装 docker-compose&lt;/h4&gt;
&lt;p&gt;安装 docker-compose 最新版的命令可以在这里查看：&lt;a href=&#34;https://github.com/docker/compose/releases&#34;&gt;https://github.com/docker/compose/releases&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;通过-docker-compose-部署&#34;&gt;通过 docker-compose 部署&lt;/h4&gt;
&lt;p&gt;下载 &lt;a href=&#34;https://github.com/HenryQW/Awesome-TTRSS/blob/master/docker-compose.yml&#34;&gt;docker-compose.yml&lt;/a&gt; 至任意目录或者新建 &lt;code&gt;docker-compose.yml&lt;/code&gt; 拷贝我的内容进去。&lt;/p&gt;
&lt;p&gt;注意事项：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;包含了：&lt;a href=&#34;https://hub.docker.com/r/wangqiru/ttrss&#34;&gt;TTRSS&lt;/a&gt;、&lt;a href=&#34;https://hub.docker.com/r/sameersbn/postgresql&#34;&gt;PostgreSQL&lt;/a&gt;、&lt;a href=&#34;https://hub.docker.com/r/wangqiru/mercury-parser-api&#34;&gt;Mercury Parser API&lt;/a&gt;、&lt;a href=&#34;https://hub.docker.com/r/wangqiru/opencc-api-server&#34;&gt;OpenCC API&lt;/a&gt; 四个镜像，后面两个为可选项，可以安装也可以不安装。&lt;/li&gt;
&lt;li&gt;请务必更改 postgres 用户密码。&lt;/li&gt;
&lt;li&gt;默认通过 &lt;code&gt;181&lt;/code&gt; 端口访问 TTRSS，&lt;/li&gt;
&lt;li&gt;默认账户：&lt;code&gt;admin&lt;/code&gt; 密码：&lt;code&gt;password&lt;/code&gt;，请第一时间更改。&lt;/li&gt;
&lt;/ol&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-yaml&#34; data-language=&#34;yaml&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;docker-compose.yml
version: &amp;#39;3&amp;#39;

services:
  database.postgres:
    image: postgres:alpine
    container_name: postgres
    restart: always
    environment:
      - PG_PASSWORD&amp;#x3D;password # 务必修改密码！
      - DB_EXTENSION&amp;#x3D;pg_trgm
    volumes:
      - .&amp;#x2F;postgres&amp;#x2F;data&amp;#x2F;:&amp;#x2F;var&amp;#x2F;lib&amp;#x2F;postgresql&amp;#x2F; # 将数据库数据保存到当前目录的 postgres&amp;#x2F;data&amp;#x2F; 文件夹中

  service.rss:
    image: wangqiru&amp;#x2F;ttrss:latest
    container_name: ttrss
    restart: always
    ports:
      - 181:80
    environment:
      - SELF_URL_PATH&amp;#x3D;http:&amp;#x2F;&amp;#x2F;localhost:181&amp;#x2F; # 更改为你自己的域名或者 IP！
      - DB_HOST&amp;#x3D;database.postgres # 数据库地址
      - DB_PORT&amp;#x3D;5432 # 数据库端口
      - DB_NAME&amp;#x3D;ttrss # 数据库名称
      - DB_USER&amp;#x3D;postgres # 数据库用户名
      - DB_PASS&amp;#x3D;password # 务必修改密码（应与上面修改的密码相同）
      - ENABLE_PLUGINS&amp;#x3D;auth_internal,fever # 在系统层面启用的插件名称（为所有用户启用），auth_internal 为必选
    stdin_open: true
    tty: true
    command: sh -c &amp;#39;sh &amp;#x2F;wait-for.sh database.postgres:5432 -- php &amp;#x2F;configure-db.php &amp;amp;&amp;amp; exec s6-svscan &amp;#x2F;etc&amp;#x2F;s6&amp;#x2F;&amp;#39;

  service.mercury: # 在插件页 API 地址填写 &amp;#96;service.mercury:3000&amp;#96; 启用插件
    image: wangqiru&amp;#x2F;mercury-parser-api:latest
    container_name: mercury
    restart: always
    expose:
      - 3000

  service.opencc: # 在插件页 API 地址填写 &amp;#96;service.opencc:3000&amp;#96; 启用插件
    image: wangqiru&amp;#x2F;opencc-api-server:latest
    container_name: opencc
    restart: always
    environment:
      - NODE_ENV&amp;#x3D;production
    expose:
      - 3000&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;支持的环境变量列表：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SELF_URL_PATH: TTRSS 实例地址&lt;/li&gt;
&lt;li&gt;DB_HOST: 数据库地址&lt;/li&gt;
&lt;li&gt;DB_PORT: 数据库端口&lt;/li&gt;
&lt;li&gt;DB_NAME: 数据库名字&lt;/li&gt;
&lt;li&gt;DB_USER: 数据库用户名&lt;/li&gt;
&lt;li&gt;DB_PASS: 数据库密码&lt;/li&gt;
&lt;li&gt;ENABLE_PLUGINS: 在系统层面启用的插件名称，其中 auth_internal 为必须启用的登录插件&lt;/li&gt;
&lt;li&gt;SESSION_COOKIE_LIFETIME: 使用网页版登陆时 cookie 过期时间，单位为小时，默认为 24 小时&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;修改完成后在同目录下运行 &lt;code&gt;docker-compose up -d&lt;/code&gt; 等待部署完成即可。此时通过域名（域名需解析到这个 VPS）或 ip 加刚刚设置的端口已经可以开始使用 TTRSS 了，出来登录的界面后先去改个密码，然后来开启 HTTPS 访问。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Tips: TTRSS是每日构建，有时候构建出来的镜像没法使用，还不如固定一个Docker版本&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;配置-HTTPS&#34;&gt;配置 HTTPS&lt;/h3&gt;
&lt;p&gt;首先安装 nginx 并将其加入开机自启：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;apt install nginx
systemctl enable  nginx&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;然后编写 ttrss 反向代理配置文件&lt;/p&gt;
&lt;p&gt;新建 /etc/nginx/conf.d/ttrss.conf 并将一下内容写入，注意替换域名。&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-nginx&#34; data-language=&#34;nginx&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-nginx&#34;&gt;nano &amp;#x2F;etc&amp;#x2F;nginx&amp;#x2F;conf.d&amp;#x2F;ttrss.conf
&amp;#x2F;etc&amp;#x2F;nginx&amp;#x2F;conf.d&amp;#x2F;ttrss.conf
upstream ttrssdev &amp;#123;
  server 127.0.0.1:181;
&amp;#125;

server &amp;#123;
    listen 80;
    server_name  youdomain.com;
    #return 301 https:&amp;#x2F;&amp;#x2F;youdomain.com$request_uri;
    #rewrite ^(.*)$ https:&amp;#x2F;&amp;#x2F;$host$1 permanent;
&amp;#125;

server &amp;#123;
    listen 443 ssl;
    gzip on;
    server_name  youdomain.com;

    access_log &amp;#x2F;var&amp;#x2F;log&amp;#x2F;nginx&amp;#x2F;ttrssdev_access.log combined;
    error_log  &amp;#x2F;var&amp;#x2F;log&amp;#x2F;nginx&amp;#x2F;ttrssdev_error.log;

    location &amp;#x2F; &amp;#123;
        proxy_redirect off;
        proxy_pass http:&amp;#x2F;&amp;#x2F;ttrssdev;

        proxy_set_header  Host                $http_host;
        proxy_set_header  X-Real-IP           $remote_addr;
        proxy_set_header  X-Forwarded-Ssl     on;
        proxy_set_header  X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header  X-Forwarded-Proto   $scheme;
        proxy_set_header  X-Frame-Options     SAMEORIGIN;

        client_max_body_size        100m;
        client_body_buffer_size     128k;

        proxy_buffer_size           4k;
        proxy_buffers               4 32k;
        proxy_busy_buffers_size     64k;
        proxy_temp_file_write_size  64k;
    &amp;#125;
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;然后使用 &lt;code&gt;nginx -t&lt;/code&gt; 查看有无错误，没有错误后使用 &lt;code&gt;nginx -s reload&lt;/code&gt; 重启 Nginx 服务。此时使用域名或 ip 应该可以直接访问了，不过这时还是 http。&lt;/p&gt;
&lt;p&gt;然后使用 &lt;a href=&#34;https://letsencrypt.org/zh-cn/&#34;&gt;Let’s Encrypt&lt;/a&gt; 官方推荐的 &lt;a href=&#34;https://certbot.eff.org/&#34;&gt;Certbot&lt;/a&gt; 获取免费的 SSL 证书。&lt;/p&gt;
&lt;p&gt;打开 &lt;a href=&#34;https://certbot.eff.org/instructions&#34;&gt;Certbot 说明&lt;/a&gt; 后选择 Nginx 和运行的系统后就可以查看官方详细地说明，跟着做一遍就好了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-1.png&#34; alt=&#34;Cerbot 说明界面&#34;&gt;&lt;/p&gt;
&lt;p&gt;有证书之后再再访问我们的 TTRSS 服务器令人喜爱的小绿锁是不是就出来呢（可能需要重启 Nginx 服务）。&lt;/p&gt;
&lt;p&gt;到这个界面就算是告一段落了，撒花！&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-2.png&#34; alt=&#34;TTRSS 界面&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;TTRSS-插件&#34;&gt;TTRSS 插件&lt;/h3&gt;
&lt;h4 id=&#34;Mercury-全文获取&#34;&gt;&lt;a href=&#34;https://github.com/HenryQW/mercury_fulltext&#34;&gt;Mercury 全文获取&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Mercury 全文获取插件需要配合单独的 Mercury Parser API 服务器使用，&lt;a href=&#34;https://blog.oevery.me/TTRSS%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B/#%E9%80%9A%E8%BF%87-docker-compose-%E9%83%A8%E7%BD%B2&#34;&gt;docker-compose&lt;/a&gt; 部署方式已经包含 &lt;a href=&#34;https://github.com/HenryQW/mercury-parser-api&#34;&gt;HenryQW/mercury-parser-api&lt;/a&gt; 服务器。&lt;/p&gt;
&lt;p&gt;设置步骤：&lt;/p&gt;
&lt;p&gt;首先去 TTRSS 的偏好设置中开启 Mercury。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-3.png&#34; alt=&#34;开启 Mercury&#34;&gt;&lt;/p&gt;
&lt;p&gt;再在设置中填写 &lt;code&gt;mercury&lt;/code&gt; 容器的地址。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-4.png&#34; alt=&#34;填写 Mercury API 地址&#34;&gt;&lt;/p&gt;
&lt;p&gt;再右键点击源选择编辑信息源，在插件中对这个源开启插件。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-5.png&#34; alt=&#34;对单个源开启插件&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;OpenCC-繁简转换&#34;&gt;&lt;a href=&#34;https://github.com/HenryQW/ttrss_opencc&#34;&gt;OpenCC 繁简转换&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/BYVoid/OpenCC&#34;&gt;OpenCC&lt;/a&gt; 是一个开源的简繁转换项目，需要配合单独的 Mercury Parser API 服务器使用，&lt;a href=&#34;https://blog.oevery.me/TTRSS%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B/#%E9%80%9A%E8%BF%87-docker-compose-%E9%83%A8%E7%BD%B2&#34;&gt;docker-compose&lt;/a&gt; 部署方式已经包含 &lt;a href=&#34;https://github.com/HenryQW/OpenCC.henry.wang&#34;&gt;HenryQW/OpenCC.henry.wang&lt;/a&gt; 服务器。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-6.png&#34; alt=&#34;开启 opencc&#34;&gt;&lt;/p&gt;
&lt;p&gt;再在设置中填写刚刚查看的 &lt;code&gt;Opencc&lt;/code&gt; 容器的地址。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-7.png&#34; alt=&#34;填写 Opencc API 地址&#34;&gt;&lt;/p&gt;
&lt;p&gt;备注：t2s为繁体转简体，其他的转换方式如下:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;s2t: Simplified Chinese to Traditional Chinese 简体到繁体&lt;/li&gt;
&lt;li&gt;t2s: Traditional Chinese to Simplified Chinese 繁体到简体&lt;/li&gt;
&lt;li&gt;s2tw: Simplified Chinese to Traditional Chinese (Taiwan Standard) 简体到台湾正体&lt;/li&gt;
&lt;li&gt;tw2s: Traditional Chinese (Taiwan Standard) to Simplified Chinese 台湾正体到简体&lt;/li&gt;
&lt;li&gt;s2hk: Simplified Chinese to Traditional Chinese (Hong Kong Standard) 简体到香港繁体（香港小学学习字词表标准）&lt;/li&gt;
&lt;li&gt;hk2s: Traditional Chinese (Hong Kong Standard) to Simplified Chinese 香港繁体（香港小学学习字词表标准）到简体&lt;/li&gt;
&lt;li&gt;s2twp: Simplified Chinese to Traditional Chinese (Taiwan Standard) with Taiwanese idiom 简体到繁体（台湾正体标准）并转换为台湾常用词汇&lt;/li&gt;
&lt;li&gt;tw2sp: Traditional Chinese (Taiwan Standard) to Simplified Chinese with Mainland Chinese idiom 繁体（台湾正体标准）到简体并转换为中国大陆常用词汇&lt;/li&gt;
&lt;li&gt;t2tw: Traditional Chinese (OpenCC Standard) to Taiwan Standard 繁体（OpenCC 标准）到台湾正体&lt;/li&gt;
&lt;li&gt;t2hk: Traditional Chinese (OpenCC Standard) to Hong Kong Standard 繁体（OpenCC 标准）到香港繁体（香港小学学习字词表标准）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这个插件同样需要去订阅源的编辑源信息中开启。&lt;/p&gt;
&lt;h4 id=&#34;Fever-API&#34;&gt;Fever API&lt;/h4&gt;
&lt;p&gt;提供 Fever API 支持，对于使用 Reeder 的用户十分有用。&lt;strong&gt;该插件默认作为系统插件启用。&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;首先在设置中启用 API&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-8.png&#34; alt=&#34;启用 API&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后在插件中设置 Fever API 密码&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/04/2020220420142913-9.png&#34; alt=&#34;填写 Fever API 密码&#34;&gt;&lt;/p&gt;
&lt;p&gt;在支持 Fever 的阅读器使用 &lt;code&gt;https://youdomain.com/plugins/fever/&lt;/code&gt; 作为服务器地址，使用刚刚设置的密码登录。由于该插件使用未加盐的 MD5 加密密码进行通信，强烈建议使用应用专用密码并开启 &lt;a href=&#34;/posts/f4926c88/#%E9%85%8D%E7%BD%AE-HTTPS&#34;&gt;HTTPS&lt;/a&gt;。&lt;/p&gt;
&lt;h3 id=&#34;最终效果&#34;&gt;最终效果&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;把你感兴趣的RSS订阅了，甚至可以作为一个更加高效的私有搜索引擎来使用！&lt;/p&gt;
&lt;p&gt;个人独立博客是博文质量最高的搜索文章来源！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/31/20220531105612.webp&#34; alt=&#34;TTRSS订阅blog.17lai.site效果&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;Docker-compose-安装&#34;&gt;Docker compose 安装&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;添加支持了中文搜索&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/appotry/postgres-chinese-textsearch&#34;&gt;Github postgres-chinese-textsearch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://hub.docker.com/r/bloodstar/postgres-chinese-textsearch&#34;&gt;DockerHub postgres-chinese-textsearch&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-yaml&#34; data-language=&#34;yaml&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;version: &amp;quot;3&amp;quot;
services:
  service.rss:
    image: bloodstar&amp;#x2F;ttrss:latest
    container_name: ttrss
    ports:
      - 181:80
    environment:
      - SELF_URL_PATH&amp;#x3D;http:&amp;#x2F;&amp;#x2F;localhost:181&amp;#x2F; # please change to your own domain
      - DB_HOST&amp;#x3D;database.postgres
      - DB_PORT&amp;#x3D;5432
      - DB_NAME&amp;#x3D;ttrss
      - DB_USER&amp;#x3D;postgres
      - DB_PASS&amp;#x3D;ttrss # please change the password
      - PUID&amp;#x3D;1000
      - PGID&amp;#x3D;1000
      - TEXTSEARCH_EXTENSION&amp;#x3D;pg_jieba # add support for chinese fulltext search (pg_jieba, zhparser, or both two)
    volumes:
      - feed-icons:&amp;#x2F;var&amp;#x2F;www&amp;#x2F;feed-icons&amp;#x2F;
    networks:
      - public_access
      - service_only
      - database_only
    stdin_open: true
    tty: true
    restart: always

  service.mercury: # set Mercury Parser API endpoint to &amp;#96;service.mercury:3000&amp;#96; on TTRSS plugin setting page
    image: wangqiru&amp;#x2F;mercury-parser-api:latest
    container_name: mercury
    networks:
      - public_access
      - service_only
    restart: always

  service.opencc: # set OpenCC API endpoint to &amp;#96;service.opencc:3000&amp;#96; on TTRSS plugin setting page
    image: wangqiru&amp;#x2F;opencc-api-server:latest
    container_name: opencc
    environment:
      - NODE_ENV&amp;#x3D;production
    networks:
      - service_only
    restart: always

  # database.postgres:
  #   image: postgres:13-alpine
  #   container_name: postgres
  #   environment:
  #     - POSTGRES_PASSWORD&amp;#x3D;ttrss # feel free to change the password
  #   volumes:
  #     - ~&amp;#x2F;postgres&amp;#x2F;data&amp;#x2F;:&amp;#x2F;var&amp;#x2F;lib&amp;#x2F;postgresql&amp;#x2F;data # persist postgres data to ~&amp;#x2F;postgres&amp;#x2F;data&amp;#x2F; on the host
  #   networks:
  #     - database_only
  #   restart: always

  database.postgres:
    image: bloodstar&amp;#x2F;postgres-chinese-textsearch:latest
    container_name: postgres
    environment:
      - POSTGRES_PASSWORD&amp;#x3D;ttrss # please change the password
    volumes:
      - ~&amp;#x2F;postgres&amp;#x2F;data&amp;#x2F;:&amp;#x2F;var&amp;#x2F;lib&amp;#x2F;postgresql&amp;#x2F;data # persist postgres data to ~&amp;#x2F;postgres&amp;#x2F;data&amp;#x2F; on the host
    restart: always

  # utility.watchtower:
  #   container_name: watchtower
  #   image: containrrr&amp;#x2F;watchtower:latest
  #   volumes:
  #     - &amp;#x2F;var&amp;#x2F;run&amp;#x2F;docker.sock:&amp;#x2F;var&amp;#x2F;run&amp;#x2F;docker.sock
  #   environment:
  #     - WATCHTOWER_CLEANUP&amp;#x3D;true
  #     - WATCHTOWER_POLL_INTERVAL&amp;#x3D;86400
  #   restart: always

volumes:
  feed-icons:

networks:
  public_access: # Provide the access for ttrss UI
  service_only: # Provide the communication network between services only
    internal: true
  database_only: # Provide the communication between ttrss and database only
    internal: true&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;网络订阅平台&#34;&gt;网络订阅平台&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;各种原因没法自己搭建私有订阅，那么还有一些免费平台可以选择。只是都有各种限制！&lt;/p&gt;
&lt;p&gt;在聚合搜索平台查找感兴趣的订阅源，使用私有订阅工具订阅，是最佳体验！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;QQ-邮箱&#34;&gt;QQ 邮箱&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;很多人可能没怎么用过，但 QQ 邮箱订阅 rss 做的还不错&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;wordpress&#34;&gt;wordpress&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;https://wordpress.com/read&#34;&gt;https://wordpress.com/read&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/08/19/20220819192759.webp&#34; alt=&#34;WordPress read&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;feedly&#34;&gt;feedly&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;http://feedly.com/&#34;&gt;http://feedly.com/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/08/19/20220819193000.webp&#34; alt=&#34;feedly&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;一些订阅源推荐&#34;&gt;一些订阅源推荐&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;最优质的文章来源应该是一些独立站点的博客了，其它还有微信公众号，Telegram频道，Bilibili，Youtube，少数派、知乎、V2EX等平台&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://zhblogs.ohyee.cc/&#34;&gt;&lt;strong&gt;中文博客列表导航项目&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://feeds.pub/cn-indie&#34;&gt;中文独立博客列表&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://utopiablog.cn/&#34;&gt;中文独立博客文章聚合搜索&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://rss-source.com/&#34;&gt;RSS Source | RSS订阅源推荐&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://docs.rsshub.app/&#34;&gt;RSSHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://spcqwserdvymm.com.vika.cn/share/shryNwH3HRgvzMTaZVAGx/dstG4CoWQZYpDwvhws/viwHcUPmGAqmd&#34;&gt;RSS Feed 收录&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/weekend-project-space/top-rss-list&#34;&gt;weekend-project-space/top-rss-list&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://feed.hamibot.com/&#34;&gt;Feed 免费 RSS 订阅源 · Feed 提供免费的 RSS 订阅源，支持微信公众号，通过 Hamibot 可扩展支持任意 APP。&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://shimo.im/docs/iwRFK7VNmZIxnuL7/read&#34;&gt;RSS 订阅源整理&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://blackwinmin.github.io/posts/law_rss/&#34;&gt;一些法律相关信息的 RSS 订阅地址&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://getpodcast.xyz/&#34;&gt;播客 RSS Feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://trello.com/b/lvMGhlNB/%F0%9F%8E%89rss-%E6%BA%90%E5%85%B1%E4%BA%AB&#34;&gt;?RSS 源共享 | Trello&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/Gracker/Rss-IT&#34;&gt;Rss-IT: 这个项目记录了个人订阅的一些科技人的Blog地址,欢迎大家推荐,一起来完善!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.notion.so/kfang/Newsletter-68ee46c0a4574f659fb8a873ead438c6&#34;&gt;中文Newsletter导航 (notion.so)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/alaskasquirrel/Email-newsletter-RSS&#34;&gt;alaskasquirrel/Email-newsletter-RSS: 邮箱 ? newsletter RSS 荟萃 News (github.com)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/chasays/newsletter-list&#34;&gt;chasays/newsletter-list: 有趣，免费的 newsletter，欢迎推荐 (github.com)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.notion.so/kfang/Newsletter-68ee46c0a4574f659fb8a873ead438c6&#34;&gt;中文Newsletter导航 (notion.so)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://alleyread.com/&#34;&gt;AlleyRead - 重塑你的信息源&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;参考&#34;&gt;参考&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.oevery.me/RSS%E4%BD%BF%E7%94%A8%E5%BF%83%E5%BE%97/&#34;&gt;RSS使用心得&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.oevery.me/TTRSS%E6%90%AD%E5%BB%BA%E6%95%99%E7%A8%8B/&#34;&gt;TTRSS搭建教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tt-rss.org/wiki/InstallationNotesHost&#34;&gt;Installing on a host machine&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tt-rss.org/wiki/InstallationNotes&#34;&gt;Installation Guide&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="docker" />
        <category term="tools" />
        <category term="rss" />
        <category term="rsshub" />
        <updated>2022-05-31T02:19:46.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/1acb0edb/</id>
        <title>Doxygen入门教程</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/1acb0edb/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;Doxygen是API文档生成工具，可以根据代码注释生成文档的工具。支持HTML、CHM、PDF等格式。主要支持C语言、Python语言，其它C语系语言也支持（如C++、Java、C#等）。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;span id=&#34;more&#34;&gt;&lt;/span&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211032.webp&#34; alt=&#34;Doxygen效果演示&#34;&gt;&lt;/p&gt;
&lt;p&gt;本教程的测试环境&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ubuntu 18.04 LTS&lt;/li&gt;
&lt;li&gt;Doxygen 1.8.13&lt;/li&gt;
&lt;li&gt;C++&lt;/li&gt;
&lt;li&gt;Gitlab CI/CD&lt;/li&gt;
&lt;li&gt;windows&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;什么是-Doxygen？&#34;&gt;什么是 Doxygen？&lt;/h2&gt;
&lt;p&gt;Doxygen 是一个将文件的特定注释转化为文档的工具&lt;/p&gt;
&lt;h2 id=&#34;如何安装-Doxygen？&#34;&gt;如何安装 Doxygen？&lt;/h2&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;$ sudo apt install graphviz
$ sudo apt install doxygen&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;如何使用-Doxygen？&#34;&gt;如何使用 Doxygen？&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;1. 查看你使用的语言 Doxygen 是否默认支持？&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Doxygen 默认支持的语言有：C，C++，C#，Objective-C，IDL，Java，VHDL，PHP，Python，Tcl，Fortran 和 D&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. 生成配置文件&lt;/strong&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;$ ## 生成配置文件，默认配置文件名为：Doxyfile
$ doxygen -g   &amp;lt;config-file&amp;gt;
$
$ ## 生成配置文件（不含注释）
$ doxygen -s -g &amp;lt;config-file&amp;gt;
$&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;3. 修改配置文件&lt;/strong&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-makefile&#34; data-language=&#34;makefile&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-makefile&#34;&gt;## 常见配置选项

## 设置项目编码，默认为 UTF-8
DOXYFILE_ENCODING &amp;#x3D; UTF-8

## 设置项目名称
PROJECT_NAME &amp;#x3D; &amp;quot;project-name&amp;quot;

## 设置项目版本号
PROJECT_NUMBER &amp;#x3D; &amp;quot;1.0.0&amp;quot;

## 设置项目的描述
PROJECT_BRIEF &amp;#x3D; &amp;quot;这是项目描述&amp;quot;

## 设置项目的 logo 
PROJECT_LOGO &amp;#x3D; &amp;quot;&amp;quot;

## 设置输入目录，如果未设置，则在当前目录查找
INPUT &amp;#x3D; src

## 设置要匹配的输入文件
FILE_PATTERNS &amp;#x3D; *.cc *.h

## 设置不需要处理的输入目录
EXCLUDE &amp;#x3D;

## 设置不需要匹配的输入文件
EXCLUDE_PATTERNS &amp;#x3D;

## 设置输入编码，默认为 UTF-8
INPUT_ENCODING &amp;#x3D; UTF-8

## 设置是否递归搜索输入目录，默认为 NO
RECURSIVE &amp;#x3D; NO

## 设置是否提取所有类，函数等（不包括类的私有成员和静态成员），默认为 NO
EXTRACT_ALL &amp;#x3D; NO

## 设置是否提取类的私有成员，默认为 NO
EXTRACT_PRIVATE &amp;#x3D; NO

## 设置是否提取类的静态成员，默认为 NO
EXTRACT_STATIC &amp;#x3D; NO

## 设置文档是否包含源文件，默认为 NO
SOURCE_BROWSER &amp;#x3D; NO

## 设置是否对每个类都链接到其所在的头文件中，默认值为 YES
VERBATIM_HEADERS &amp;#x3D; YES

## 设置文档的输出目录
OUTPUT_DIRECTORY &amp;#x3D; doc

## 设置是否支持 Markdown，默认值为 YES
MARKDOWN_SUPPORT &amp;#x3D; YES

## 设置文档的主界面
USE_MDFILE_AS_MAINPAGE &amp;#x3D;

## 设置文档的语言，默认为 English
OUTPUT_LANGUAGE &amp;#x3D; Chinese         &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;4. 给代码添加注释&lt;/strong&gt;&lt;br&gt;
并不是所有的注释都会被收入文档，Doxygen 支持的常用的注释风格有：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;**     注释的内容       *&amp;#x2F;
&amp;#x2F;*!     注释的内容       *&amp;#x2F;

## 在变量后 注释文件，类，结构体，共同体，枚举成员 或 函数参数
int a; &amp;#x2F;**&amp;lt;      注释的内容        *&amp;#x2F;
int a; &amp;#x2F;*!&amp;lt;      注释的内容        *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;注意：&lt;/strong&gt; 这里并不是所有的注释风格，更多注释风格见 &lt;a href=&#34;http://doxygen.nl/manual/docblocks.html&#34;&gt;官网&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Doxygen 常用的注释标记（标记以 / 或 @ 开头表示）：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-makefile&#34; data-language=&#34;makefile&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-makefile&#34;&gt;## 添加作者
@author 作者1 作者2

## 添加日期
@date 日期

## 添加文件名
@file 文件名

## 添加简单描述
@brief 简要描述

## 添加详细描述
@details 详细描述

## 添加类信息
@class 类名 类所在的文件 类所在的文件（可包括路径） 

## 添加结构体信息
@class 结构体名 结构体所在的文件 结构体所在的文件（可包括路径）

## 添加宏信息
@enum 宏名

## 添加函数信息
@fn 函数信息

## 添加参数说明
@param [in]   输入参数名 说明
@param [out] 输出参数名 说明

## 添加返回说明
@return 返回说明

## 添加返回特定值说明
@retval 特定值 特定返回值说明

## 添加异常说明
@exception 异常类型 异常说明

## 添加代码
@code
...代码...
@encode

## 添加文件名说明
@headfile 文件名 文件名（可包括路径） 

## 添加版本号
@version 版本号

## 添加计划做的事儿
@todo 计划做的事

## 添加参考 
@see 参加其它

## 添加过时说明
@deprecated 过时说明

## 添加 bug 说明
@bug &amp;quot;bug 说明&amp;quot;

## 添加例子
@example 例子文件名

## 添加警告信息
@warning 警告信息

## 添加开始使用的版本
@since 版本

## 添加测试信息
@test 测试

## 添加主界面信息
@mainpage 标题

## 添加注意事项 
@note 注意事项

## 添加协议信息
@copyright 协议信息&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h3 id=&#34;为C-C-添加注释&#34;&gt;为C/C++添加注释&lt;/h3&gt;
&lt;p&gt;首先为函数添加注释信息，这是必须要做的。这里有个选择性问题，添加到哪里呢？.c文件？.h文件？&lt;/p&gt;
&lt;p&gt;一般来说：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;.h文件代表模块对外的接口最小信息，面向模块使用者&lt;/li&gt;
&lt;li&gt;.c文件代表模块的实现代码，面向的是开发者&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在实际编程中，事先约定各个模块间的接口，然后将不同的模块分配给不同的开发者，与此同时，测试人员根据接口要求，编写测试代码，这就完全保证了并发编程和白盒测试要求。&lt;/p&gt;
&lt;p&gt;这里我们可以看到，文档主要是用来描述接口信息的，所以，我对代码的注释规定如下：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;模块对外接口，仅在.h中提供注释信息&lt;/li&gt;
&lt;li&gt;模块内部辅助函数，全部用static设为私有函数，同时仅在.c中保留注释信息&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;当然，您也可以同时为.c .h的接口函数编写两份完全一样的注释信息，但这么做，您会同时维护两份信息，出错的概率会更大些。&lt;/p&gt;
&lt;p&gt;确定了注释位置，下一步考虑一个函数需要哪些信息&lt;/p&gt;
&lt;p&gt;一般来说，需要函数功能，入口参数，返回值，注意事项，某些时候还需要说明上下文环境，从而保证函数能正确执行&lt;/p&gt;
&lt;p&gt;比如这个函数&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;extern int Dev_PrintInt(int number); &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;它的功能就是打印一个整形数据，传入参数为整数，返回的是成功打印的数据长度（字节为单位），同时呢，我们在调用这个函数之前，必须要先初始化Dev设备&lt;/p&gt;
&lt;p&gt;ok，这就是所有接口信息，稍微规范一下，就变成了下面的样子&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F; 函数功能：打印整数
&amp;#x2F;&amp;#x2F; 入口参数：number为一个整数类型
&amp;#x2F;&amp;#x2F; 返回结构：返回的是成功打印的数据长度（字节为单位）
&amp;#x2F;&amp;#x2F; 注意事项：
&amp;#x2F;&amp;#x2F;          1：在调用本函数前，请确保已经调用Dev_Init初始化设备
&amp;#x2F;&amp;#x2F;          2：请注意函数返回值，如果该值为0，则说明函数执行失败

extern int Dev_PrintInt(int number); &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;用英文来书写呢，则变成下面的样子&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F; brief  : Print Int number to terimal device.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F; param  : number is the data you want to print.
&amp;#x2F;&amp;#x2F; retval : the number of print information, in bytes. return zero indicate print error !
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F; Note:
&amp;#x2F;&amp;#x2F;      * Be sure you have called \ref Dev_Init function before call this fuction.
&amp;#x2F;&amp;#x2F;      * Remember to check return value.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern int Dev_PrintInt(int number);&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;注释信息写完了，一般来说，函数能达到这种信息程度就ok了，但既然要生成文档，就不得不考虑一个问题&lt;/p&gt;
&lt;p&gt;如果你是Doxygen作者，怎么从上面的注释里面提取信息呢，信息那么多，有&lt;code&gt;*&lt;/code&gt;号，有各种文字信息。&lt;/p&gt;
&lt;p&gt;你可以将所有的注释信息都输出出来，但这么做，等于没有分类整理，同时也包含了杂乱信息，比如一排&lt;code&gt;*&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;另外一个解决方法是：设置某些特殊字符，比如&lt;code&gt;function&lt;/code&gt;表示，一旦检测到这个特殊标记，则认为是接下来的一行是函数功能描述。但这么做，万一用户的注释里面出现很多个function，你怎么识别哪个是普通文本，哪个是特殊标记？&lt;/p&gt;
&lt;p&gt;也许你会说了，可以采用
    &lt;span id=&#34;mjx-ce73a1&#34;&gt;
      &lt;style&gt;
      #mjx-ce73a1{
        display:contents;
        mjx-assistive-mml {
          user-select: text !important;
          clip: auto !important;
          color: rgba(0,0,0,0);
        }
        
mjx-container[jax=&#34;SVG&#34;] {
  direction: ltr;
}

mjx-container[jax=&#34;SVG&#34;] &gt; svg {
  overflow: visible;
  min-height: 1px;
  min-width: 1px;
}

mjx-container[jax=&#34;SVG&#34;] &gt; svg a {
  fill: blue;
  stroke: blue;
}

mjx-assistive-mml {
  position: absolute !important;
  top: 0px;
  left: 0px;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 1px 0px 0px 0px !important;
  border: 0px !important;
  display: block !important;
  width: auto !important;
  overflow: hidden !important;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

mjx-assistive-mml[display=&#34;block&#34;] {
  width: 100% !important;
}

mjx-container[jax=&#34;SVG&#34;][display=&#34;true&#34;] {
  display: block;
  text-align: center;
  margin: 1em 0;
}

mjx-container[jax=&#34;SVG&#34;][display=&#34;true&#34;][width=&#34;full&#34;] {
  display: flex;
}

mjx-container[jax=&#34;SVG&#34;][justify=&#34;left&#34;] {
  text-align: left;
}

mjx-container[jax=&#34;SVG&#34;][justify=&#34;right&#34;] {
  text-align: right;
}

g[data-mml-node=&#34;merror&#34;] &gt; g {
  fill: red;
  stroke: red;
}

g[data-mml-node=&#34;merror&#34;] &gt; rect[data-background] {
  fill: yellow;
  stroke: none;
}

g[data-mml-node=&#34;mtable&#34;] &gt; line[data-line], svg[data-table] &gt; g &gt; line[data-line] {
  stroke-width: 70px;
  fill: none;
}

g[data-mml-node=&#34;mtable&#34;] &gt; rect[data-frame], svg[data-table] &gt; g &gt; rect[data-frame] {
  stroke-width: 70px;
  fill: none;
}

g[data-mml-node=&#34;mtable&#34;] &gt; .mjx-dashed, svg[data-table] &gt; g &gt; .mjx-dashed {
  stroke-dasharray: 140;
}

g[data-mml-node=&#34;mtable&#34;] &gt; .mjx-dotted, svg[data-table] &gt; g &gt; .mjx-dotted {
  stroke-linecap: round;
  stroke-dasharray: 0,140;
}

g[data-mml-node=&#34;mtable&#34;] &gt; g &gt; svg {
  overflow: visible;
}

[jax=&#34;SVG&#34;] mjx-tool {
  display: inline-block;
  position: relative;
  width: 0;
  height: 0;
}

[jax=&#34;SVG&#34;] mjx-tool &gt; mjx-tip {
  position: absolute;
  top: 0;
  left: 0;
}

mjx-tool &gt; mjx-tip {
  display: inline-block;
  padding: .2em;
  border: 1px solid #888;
  font-size: 70%;
  background-color: #F8F8F8;
  color: black;
  box-shadow: 2px 2px 5px #AAAAAA;
}

g[data-mml-node=&#34;maction&#34;][data-toggle] {
  cursor: pointer;
}

mjx-status {
  display: block;
  position: fixed;
  left: 1em;
  bottom: 1em;
  min-width: 25%;
  padding: .2em .4em;
  border: 1px solid #888;
  font-size: 90%;
  background-color: #F8F8F8;
  color: black;
}

foreignObject[data-mjx-xml] {
  font-family: initial;
  line-height: normal;
  overflow: visible;
}

mjx-container[jax=&#34;SVG&#34;] path[data-c], mjx-container[jax=&#34;SVG&#34;] use[data-c] {
  stroke-width: 3;
}

g[data-mml-node=&#34;xypic&#34;] path {
  stroke-width: inherit;
}

.MathJax g[data-mml-node=&#34;xypic&#34;] path {
  stroke-width: inherit;
}

      }
      &lt;/style&gt;
      &lt;mjx-container class=&#34;MathJax&#34; jax=&#34;SVG&#34; style=&#34;position: relative;&#34;&gt;&lt;svg style=&#34;vertical-align: -0.05ex;&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34; width=&#34;13.627ex&#34; height=&#34;1.645ex&#34; role=&#34;img&#34; focusable=&#34;false&#34; viewBox=&#34;0 -705 6023 727&#34; aria-hidden=&#34;true&#34;&gt;&lt;g stroke=&#34;currentColor&#34; fill=&#34;currentColor&#34; stroke-width=&#34;0&#34; transform=&#34;scale(1,-1)&#34;&gt;&lt;g data-mml-node=&#34;math&#34;&gt;&lt;g data-mml-node=&#34;mi&#34;&gt;&lt;path data-c=&#34;1D439&#34; d=&#34;M48 1Q31 1 31 11Q31 13 34 25Q38 41 42 43T65 46Q92 46 125 49Q139 52 144 61Q146 66 215 342T285 622Q285 629 281 629Q273 632 228 634H197Q191 640 191 642T193 659Q197 676 203 680H742Q749 676 749 669Q749 664 736 557T722 447Q720 440 702 440H690Q683 445 683 453Q683 454 686 477T689 530Q689 560 682 579T663 610T626 626T575 633T503 634H480Q398 633 393 631Q388 629 386 623Q385 622 352 492L320 363H375Q378 363 398 363T426 364T448 367T472 374T489 386Q502 398 511 419T524 457T529 475Q532 480 548 480H560Q567 475 567 470Q567 467 536 339T502 207Q500 200 482 200H470Q463 206 463 212Q463 215 468 234T473 274Q473 303 453 310T364 317H309L277 190Q245 66 245 60Q245 46 334 46H359Q365 40 365 39T363 19Q359 6 353 0H336Q295 2 185 2Q120 2 86 2T48 1Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(749,0)&#34;&gt;&lt;path data-c=&#34;1D448&#34; d=&#34;M107 637Q73 637 71 641Q70 643 70 649Q70 673 81 682Q83 683 98 683Q139 681 234 681Q268 681 297 681T342 682T362 682Q378 682 378 672Q378 670 376 658Q371 641 366 638H364Q362 638 359 638T352 638T343 637T334 637Q295 636 284 634T266 623Q265 621 238 518T184 302T154 169Q152 155 152 140Q152 86 183 55T269 24Q336 24 403 69T501 205L552 406Q599 598 599 606Q599 633 535 637Q511 637 511 648Q511 650 513 660Q517 676 519 679T529 683Q532 683 561 682T645 680Q696 680 723 681T752 682Q767 682 767 672Q767 650 759 642Q756 637 737 637Q666 633 648 597Q646 592 598 404Q557 235 548 205Q515 105 433 42T263 -22Q171 -22 116 34T60 167V183Q60 201 115 421Q164 622 164 628Q164 635 107 637Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(1516,0)&#34;&gt;&lt;path data-c=&#34;1D441&#34; d=&#34;M234 637Q231 637 226 637Q201 637 196 638T191 649Q191 676 202 682Q204 683 299 683Q376 683 387 683T401 677Q612 181 616 168L670 381Q723 592 723 606Q723 633 659 637Q635 637 635 648Q635 650 637 660Q641 676 643 679T653 683Q656 683 684 682T767 680Q817 680 843 681T873 682Q888 682 888 672Q888 650 880 642Q878 637 858 637Q787 633 769 597L620 7Q618 0 599 0Q585 0 582 2Q579 5 453 305L326 604L261 344Q196 88 196 79Q201 46 268 46H278Q284 41 284 38T282 19Q278 6 272 0H259Q228 2 151 2Q123 2 100 2T63 2T46 1Q31 1 31 10Q31 14 34 26T39 40Q41 46 62 46Q130 49 150 85Q154 91 221 362L289 634Q287 635 234 637Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(2404,0)&#34;&gt;&lt;path data-c=&#34;1D436&#34; d=&#34;M50 252Q50 367 117 473T286 641T490 704Q580 704 633 653Q642 643 648 636T656 626L657 623Q660 623 684 649Q691 655 699 663T715 679T725 690L740 705H746Q760 705 760 698Q760 694 728 561Q692 422 692 421Q690 416 687 415T669 413H653Q647 419 647 422Q647 423 648 429T650 449T651 481Q651 552 619 605T510 659Q484 659 454 652T382 628T299 572T226 479Q194 422 175 346T156 222Q156 108 232 58Q280 24 350 24Q441 24 512 92T606 240Q610 253 612 255T628 257Q648 257 648 248Q648 243 647 239Q618 132 523 55T319 -22Q206 -22 128 53T50 252Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(3164,0)&#34;&gt;&lt;path data-c=&#34;1D447&#34; d=&#34;M40 437Q21 437 21 445Q21 450 37 501T71 602L88 651Q93 669 101 677H569H659Q691 677 697 676T704 667Q704 661 687 553T668 444Q668 437 649 437Q640 437 637 437T631 442L629 445Q629 451 635 490T641 551Q641 586 628 604T573 629Q568 630 515 631Q469 631 457 630T439 622Q438 621 368 343T298 60Q298 48 386 46Q418 46 427 45T436 36Q436 31 433 22Q429 4 424 1L422 0Q419 0 415 0Q410 0 363 1T228 2Q99 2 64 0H49Q43 6 43 9T45 27Q49 40 55 46H83H94Q174 46 189 55Q190 56 191 56Q196 59 201 76T241 233Q258 301 269 344Q339 619 339 625Q339 630 310 630H279Q212 630 191 624Q146 614 121 583T67 467Q60 445 57 441T43 437H40Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(3868,0)&#34;&gt;&lt;path data-c=&#34;1D43C&#34; d=&#34;M43 1Q26 1 26 10Q26 12 29 24Q34 43 39 45Q42 46 54 46H60Q120 46 136 53Q137 53 138 54Q143 56 149 77T198 273Q210 318 216 344Q286 624 286 626Q284 630 284 631Q274 637 213 637H193Q184 643 189 662Q193 677 195 680T209 683H213Q285 681 359 681Q481 681 487 683H497Q504 676 504 672T501 655T494 639Q491 637 471 637Q440 637 407 634Q393 631 388 623Q381 609 337 432Q326 385 315 341Q245 65 245 59Q245 52 255 50T307 46H339Q345 38 345 37T342 19Q338 6 332 0H316Q279 2 179 2Q143 2 113 2T65 2T43 1Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(4372,0)&#34;&gt;&lt;path data-c=&#34;1D442&#34; d=&#34;M740 435Q740 320 676 213T511 42T304 -22Q207 -22 138 35T51 201Q50 209 50 244Q50 346 98 438T227 601Q351 704 476 704Q514 704 524 703Q621 689 680 617T740 435ZM637 476Q637 565 591 615T476 665Q396 665 322 605Q242 542 200 428T157 216Q157 126 200 73T314 19Q404 19 485 98T608 313Q637 408 637 476Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;g data-mml-node=&#34;mi&#34; transform=&#34;translate(5135,0)&#34;&gt;&lt;path data-c=&#34;1D441&#34; d=&#34;M234 637Q231 637 226 637Q201 637 196 638T191 649Q191 676 202 682Q204 683 299 683Q376 683 387 683T401 677Q612 181 616 168L670 381Q723 592 723 606Q723 633 659 637Q635 637 635 648Q635 650 637 660Q641 676 643 679T653 683Q656 683 684 682T767 680Q817 680 843 681T873 682Q888 682 888 672Q888 650 880 642Q878 637 858 637Q787 633 769 597L620 7Q618 0 599 0Q585 0 582 2Q579 5 453 305L326 604L261 344Q196 88 196 79Q201 46 268 46H278Q284 41 284 38T282 19Q278 6 272 0H259Q228 2 151 2Q123 2 100 2T63 2T46 1Q31 1 31 10Q31 14 34 26T39 40Q41 46 62 46Q130 49 150 85Q154 91 221 362L289 634Q287 635 234 637Z&#34;&gt;&lt;/path&gt;&lt;/g&gt;&lt;/g&gt;&lt;/g&gt;&lt;/svg&gt;&lt;mjx-assistive-mml unselectable=&#34;on&#34; display=&#34;inline&#34;&gt;&lt;math xmlns=&#34;http://www.w3.org/1998/Math/MathML&#34;&gt;&lt;mi&gt;F&lt;/mi&gt;&lt;mi&gt;U&lt;/mi&gt;&lt;mi&gt;N&lt;/mi&gt;&lt;mi&gt;C&lt;/mi&gt;&lt;mi&gt;T&lt;/mi&gt;&lt;mi&gt;I&lt;/mi&gt;&lt;mi&gt;O&lt;/mi&gt;&lt;mi&gt;N&lt;/mi&gt;&lt;/math&gt;&lt;/mjx-assistive-mml&gt;&lt;/mjx-container&gt;
    &lt;/span&gt;
  这种形式啊，恩，这么做是可行的，可以确保识别出来特殊标记&lt;/p&gt;
&lt;p&gt;接下来，还有一个问题，我们上面的注释中，有很多&lt;code&gt;*&lt;/code&gt;号，仅仅起到美观和格式化的作用，当然不希望在输出文档中显示这些东西，问题是你怎么识别这些符号，并不显示呢？也许你会说，可以强制规定注释的格式，不让用户在代码中写很多&lt;code&gt;*&lt;/code&gt;，ok，假设用户同意这么做。那接下来呢，如果我希望在代码中写某些话，但是不希望输出到文档中，比如“XX是2B”等等，你又该怎么做呢？&lt;/p&gt;
&lt;p&gt;正向思考遇到问题时，不妨反向考虑，这是谁的问题：是我设计思路的问题还是用户用法的问题？&lt;/p&gt;
&lt;p&gt;困难重重，肯定是设计思路的问题&lt;/p&gt;
&lt;p&gt;如果设计一个标记符，将普通注释和要生成的文档注释区分开来，就能解决问题了。&lt;/p&gt;
&lt;p&gt;Doxygen的用法，说白了，就是为了解决上面提到的两个问题：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;怎么区分普通注释和输出注释  
怎么在输出注释里面，识别特殊标记和普通文本  &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;ok，讲到这里，基本把Doxygen的机制给解释清楚了，如果您还不理解，最简单的方法就是把你假设为Doxygen&lt;br&gt;
作者，重新推演一遍。&lt;/p&gt;
&lt;p&gt;下面咱们看看Doxygen怎么解决这两个问题的&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;区分普通注释和特殊注释&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;对于C/C++语言来说，注释形式有两种&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;
&amp;#x2F;* *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;Doxygen通过在这里增加&lt;code&gt;*&lt;/code&gt;，&lt;code&gt;/&lt;/code&gt;，&lt;code&gt;!&lt;/code&gt;来作为特殊标记，比如&lt;/p&gt;
&lt;p&gt;对于&lt;code&gt;/* */&lt;/code&gt;这种注释来说，正常注释为&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;*
 * 正常注释
 *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;Doxygen在注释第一个&lt;code&gt;*&lt;/code&gt;后，设置&lt;code&gt;*&lt;/code&gt;或&lt;code&gt;!&lt;/code&gt;作为标志，如果检测到有这些，就将接下来的注释作为导出文档来解释&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;**
 * 要输出成文档的注释
 *&amp;#x2F;

 或者

&amp;#x2F;*!
 * 要输出成文档的注释
 *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;同时，中间的&lt;code&gt;*&lt;/code&gt;号可以省略，像这样&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;**
   要输出成文档的注释
 *&amp;#x2F;

 或者

&amp;#x2F;*!
   要输出成文档的注释
 *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;对于&lt;code&gt;//&lt;/code&gt;这种类型的注释，Doxygen在第二个&lt;code&gt;/&lt;/code&gt;后，增加&lt;code&gt;!&lt;/code&gt;或&lt;code&gt;/&lt;/code&gt;作为区分标志，如果检测到有这些，就将接下来的注释作为导出文档来解释&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;&amp;#x2F; 要输出成文档的注释

或者

&amp;#x2F;&amp;#x2F;! 要输出成文档的注释&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;对于这种呢，有一个潜在的问题，很多时候，我们需要在把注释放到后面，比如下面这种&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;#define DEV_ON      ((int)(1))      &amp;#x2F;&amp;#x2F;! Simple device is power on.
#define DEV_OFF     ((int)(0))      &amp;#x2F;&amp;#x2F;! Simple device is power off.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;如果真要这么写的话，Doxygen会把&lt;code&gt;//! Simple device is power on.&lt;/code&gt;当做&lt;code&gt;DEV_OFF&lt;/code&gt;的注释，这当然不是我们所希望的! 怎么办呢，只好再加一个特殊标记了，Doxygen针对这种情况，需要在&lt;code&gt;!&lt;/code&gt;后再增加一个&lt;code&gt;&amp;lt;&lt;/code&gt;标志符，如果检测到这个，则认为这个注释是为前面代码准备的，所以，上面的注释应该这么写&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;#define DEV_ON      ((int)(1))      &amp;#x2F;&amp;#x2F;!&amp;lt; Simple device is power on.
#define DEV_OFF     ((int)(0))      &amp;#x2F;&amp;#x2F;!&amp;lt; Simple device is power off.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;做到这里，Doxygen就可以正确区分普通注释和特殊注释了。&lt;/p&gt;
&lt;p&gt;**注：**提到特殊标记，其实吧，编程语言非常常用，比如HTML就是典型的markup语言，一堆一堆的括号，看着就头疼&lt;/p&gt;
&lt;p&gt;Doxygen采用&lt;code&gt;\&lt;/code&gt;和&lt;code&gt;@&lt;/code&gt;作为特殊标记符，当在特殊注释里面检测到了特殊标记符，则接下来检测紧跟单词是不是Doxygen&lt;br&gt;
事先规定好的，如果是，则将按照特定的规则来解释紧跟着的注释；如果不是呢，则将&lt;code&gt;\&lt;/code&gt;和&lt;code&gt;@&lt;/code&gt;解释为普通文本，聪明吧&lt;/p&gt;
&lt;p&gt;可能有点拗口，下面给你个例子&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \brief  Print Int number to terimal device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \param  [in] number is the data you want to print.
&amp;#x2F;&amp;#x2F;! \retval the number of print information, in bytes. return zero indicate print error !.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \note
&amp;#x2F;&amp;#x2F;! * Be sure you have called \ref Dev_Init function before call this fuction.
&amp;#x2F;&amp;#x2F;! * Remember to check return value.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern int Dev_PrintInt(int number);&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;看到了吧，这里的&lt;code&gt;\brief&lt;/code&gt;和&lt;code&gt;\param&lt;/code&gt;都是特殊符号，表示简要描述和参数。万一你小手一抖，把&lt;code&gt;\param&lt;/code&gt;写成了&lt;code&gt;\parame&lt;/code&gt;，那就悲剧了，因为Doxygen不认识&lt;code&gt;parame&lt;/code&gt;，所以它会把这句话当做是普通文本来处理&lt;/p&gt;
&lt;p&gt;其实，上面的&lt;code&gt;\&lt;/code&gt;换成&lt;code&gt;@&lt;/code&gt;也是ok的，如下所示&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! @brief  Print Int number to terimal device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! @param  [in] number is the data you want to print.
&amp;#x2F;&amp;#x2F;! @retval the number of print information, in bytes. return zero indicate print error !.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! @note
&amp;#x2F;&amp;#x2F;! * Be sure you have called \ref Dev_Init function before call this fuction.
&amp;#x2F;&amp;#x2F;! * Remember to check return value.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern int Dev_PrintInt(int number);&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;相信某些玩过ARM芯片的，对这类注释非常熟悉，官方库都是采用Doxygen语法规则注释的&lt;/p&gt;
&lt;h3 id=&#34;示例&#34;&gt;示例&lt;/h3&gt;
&lt;p&gt;采用Doxygen语法为main.c dev.c dev.h添加注释信息，完成后的效果如下所示：&lt;/p&gt;
&lt;p&gt;&lt;code&gt;main.c&lt;/code&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \file main.c 
&amp;#x2F;&amp;#x2F;! This is an simple example show developer how to use dev api to print int number.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \author    Cedar
&amp;#x2F;&amp;#x2F;! \version   V1.0
&amp;#x2F;&amp;#x2F;! \date      2014-03-23
&amp;#x2F;&amp;#x2F;! \copyright GNU Public License V3.0
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

#include &amp;quot;dev.h&amp;quot;

#define CNT_MAX  10  &amp;#x2F;&amp;#x2F;!&amp;lt; The maxium number of print

&amp;#x2F;&amp;#x2F;! Simple device example.
void DEV_Example(void)
&amp;#123;
	int i &amp;#x3D; 0;

	Dev_Init();
	
	for (i &amp;#x3D; 0; i &amp;lt; CNT_MAX; ++i)
	&amp;#123;
		Dev_PrintInt(i);
	&amp;#125;

	Dev_Close();
&amp;#125;

&amp;#x2F;&amp;#x2F;! Application Entry
int main(void)
&amp;#123;

	DEV_Example();

	return 0;
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;code&gt;dev.c&lt;/code&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \file dev.c 
&amp;#x2F;&amp;#x2F;! the implement of simple device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \author    Cedar
&amp;#x2F;&amp;#x2F;! \version   V1.0
&amp;#x2F;&amp;#x2F;! \date      2014-03-23
&amp;#x2F;&amp;#x2F;! \copyright GNU Public License V3.0
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

&amp;#x2F;&amp;#x2F;! Simple device status.
&amp;#x2F;&amp;#x2F;! 
&amp;#x2F;&amp;#x2F;! \warning This variable is designed for internal, user \b MUST \b NOT call it.
static int __DevStatus &amp;#x3D; 0

void Dev_Init(void)
&amp;#123;
	&amp;#x2F;&amp;#x2F; Print debug information
	printf(&amp;quot;Dev Initialize OK!\r\n&amp;quot;);
&amp;#125;

int Dev_PrintInt(int number)
&amp;#123;
	printf(&amp;quot;Print IntType number: %d\r\n&amp;quot;, number);
&amp;#125;

int Dev_StatusCheck(void)
&amp;#123;
	return 	(__DevStatus);
&amp;#125;

void Dev_Close(void)
&amp;#123;
	printf(&amp;quot;Dev Close OK!\r\n&amp;quot;);
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;code&gt;dev.h&lt;/code&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \file dev.h
&amp;#x2F;&amp;#x2F;!  Simple device user API.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \author    Cedar
&amp;#x2F;&amp;#x2F;! \version   V1.0
&amp;#x2F;&amp;#x2F;! \date      2014-03-23
&amp;#x2F;&amp;#x2F;! \copyright GNU Public License V3.0
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

#include &amp;lt;stdio.h&amp;gt;


&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \addtogroup Dev_Status  Simple device status information.
&amp;#x2F;&amp;#x2F;! @&amp;#123;
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

#define DEV_ON      ((int)(1))      &amp;#x2F;&amp;#x2F;!&amp;lt; Simple device is power on.
#define DEV_OFF     ((int)(0))      &amp;#x2F;&amp;#x2F;!&amp;lt; Simple device is power off.

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! @&amp;#125;
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************


&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \addtogroup Dev_API  Simple device APIs list.
&amp;#x2F;&amp;#x2F;! @&amp;#123;
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \brief  Initialize simple device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \param  none.
&amp;#x2F;&amp;#x2F;! \retval none.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \note   This function \b MUST be called first before others function.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern void Dev_Init(void);

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \brief  Print Int number to terimal device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \param  [in] number is the data you want to print.
&amp;#x2F;&amp;#x2F;! \retval the number of print information, in bytes. return zero indicate print error !.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \note
&amp;#x2F;&amp;#x2F;! * Be sure you have called \ref Dev_Init function before call this fuction.
&amp;#x2F;&amp;#x2F;! * Remember to check return value.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern int Dev_PrintInt(int number);

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \brief  Check simple device status information.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \param  none.
&amp;#x2F;&amp;#x2F;! \retval status information of simple device, which can be one of the following value:\n
&amp;#x2F;&amp;#x2F;!  - \ref DEV_ON
&amp;#x2F;&amp;#x2F;!  - \ref DEV_OFF
&amp;#x2F;&amp;#x2F;!  \n More information, please reference \ref Dev_Status.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern int Dev_StatusCheck(void);

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \brief  Close simple device.
&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;! \param  none.
&amp;#x2F;&amp;#x2F;! \retval none.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************
extern void Dev_Close(void);

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! @&amp;#125;
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************

&amp;#x2F;&amp;#x2F;***************************************************************************************
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;! \example main.c
&amp;#x2F;&amp;#x2F;!  Show how to use simple device to print int number.
&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;***************************************************************************************&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;strong&gt;4. 生成文档&lt;/strong&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;$ doxygen &amp;lt;config-file&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;Win-图形界面使用&#34;&gt;Win 图形界面使用&lt;/h2&gt;
&lt;h3 id=&#34;第1章-安装&#34;&gt;第1章 安装&lt;/h3&gt;
&lt;p&gt;在Linux下可以通过&lt;code&gt;apt install doxygen&lt;/code&gt;安装命令行工具，然后用&lt;code&gt;apt install doxygen-gui&lt;/code&gt;安装图形界面。对Linux用户来说，命令行工具可以通过&lt;code&gt;doxygen&lt;/code&gt;命令运行，而图形界面可以通过&lt;code&gt;doxywizard&lt;/code&gt;命令运行。&lt;/p&gt;
&lt;p&gt;而Windows用户可以在&lt;a href=&#34;https://www.doxygen.nl/download.html&#34;&gt;这里&lt;/a&gt;下载，安装完毕后，直接双击就能运行图形界面。&lt;/p&gt;
&lt;h4 id=&#34;1-1-基本使用&#34;&gt;1.1 基本使用&lt;/h4&gt;
&lt;p&gt;图形工具的基本使用如下图所示，有非常多的配置选项，这里我们只填入必要的配置，其它配置都用默认值。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414.webp&#34; alt=&#34;doxywizard使用步骤&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-1.webp&#34; alt=&#34;doxywizard使用步骤&#34;&gt;&lt;/p&gt;
&lt;p&gt;我们的工作目录如下：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-csharp&#34; data-language=&#34;csharp&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-csharp&#34;&gt;.
├── out
└── src
    └── math.h&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;其中&lt;code&gt;math.h&lt;/code&gt;代码如下：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;*! \file math.h *&amp;#x2F;

&amp;#x2F;*!
    用于求一个角度的sin值，输入是字符串以便同时支持弧度制和角度制表示
    \li 弧度制用pi表示，例如：2pi表示一圈、0.5pi表示直角
    \li 角度制用d结尾，例如：360d表示一圈、90d表示直角
    \li 输入也可以是数值，例如：输入3.14159大约表示180度

    \param a 用弧度制或角度制表示都行，字符串必须用&amp;#39;\0&amp;#39;表示结束
    \param[out] res 是输出参数，用于保存sin运算的结果

    \return 错误码，0表示成功，其它表示失败

    \todo 在xxx的情况下存在BUG，预计下一版本修复
*&amp;#x2F;
int sin(char *a, double *res);&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;Doxygen生成的HTML会放到&lt;code&gt;out&lt;/code&gt;目录下，生成的HTML如图1-3所示。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-2.webp&#34; alt=&#34;HTML界面&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;1-2-保存配置&#34;&gt;1.2 保存配置&lt;/h4&gt;
&lt;p&gt;在1.1节中我们配置了一些选项，也成功生成了HTML文档。我们希望下次代码改动后能够继续沿用上次配置，那么我们可以把这些配置保存成&lt;code&gt;Doxyfile&lt;/code&gt;文件，见图1-4。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-3.webp&#34; alt=&#34;保存Doxyfile配置文件&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;1-3-命令行运行Doxygen&#34;&gt;1.3 命令行运行Doxygen&lt;/h4&gt;
&lt;p&gt;有了配置文件后我们完全可以通过命令行来生成API文档，假设配置文件名为Doxyfile，那么我们只需要执行&lt;code&gt;doxygen /path/to/Doxyfile&lt;/code&gt;即可生成API文档。&lt;/p&gt;
&lt;p&gt;通过命令行生成文档有许多好处，其中最主要的好处就是：能够集成到持续集成之类的自动化系统中。&lt;/p&gt;
&lt;h3 id=&#34;第2章-为代码编写注释&#34;&gt;第2章 为代码编写注释&lt;/h3&gt;
&lt;h4 id=&#34;2-1-什么样的注释会被Doxygen识别？&#34;&gt;2.1 什么样的注释会被Doxygen识别？&lt;/h4&gt;
&lt;p&gt;Doxygen能识别这几种风格的注释：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;**
 * ... text ...
 *&amp;#x2F;

&amp;#x2F;*!
 * ... text ...
 *&amp;#x2F;

&amp;#x2F;&amp;#x2F;&amp;#x2F;
&amp;#x2F;&amp;#x2F;&amp;#x2F; ... text ...
&amp;#x2F;&amp;#x2F;&amp;#x2F;

&amp;#x2F;&amp;#x2F;!
&amp;#x2F;&amp;#x2F;!... text ...
&amp;#x2F;&amp;#x2F;!&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;文件的开头必须有文件注释，否则该文件不会被识别：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-c&#34; data-language=&#34;c&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-c&#34;&gt;&amp;#x2F;*! \file math.h *&amp;#x2F;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h4 id=&#34;2-2-注释怎么写&#34;&gt;2.2 注释怎么写&lt;/h4&gt;
&lt;p&gt;这个自己看&lt;a href=&#34;https://www.doxygen.nl/manual/docblocks.html#cppblock&#34;&gt;官网例子&lt;/a&gt;体会吧。&lt;/p&gt;
&lt;h3 id=&#34;第3章-为其它编程语言生成注释&#34;&gt;第3章 为其它编程语言生成注释&lt;/h3&gt;
&lt;p&gt;Doxygen主要支持C语言，其它语法跟C差不多的语言（如：C++/C#/PHP/Java）也能够支持，我们称这类语言为「C语系语言」。而哪些跟C语法差异较大的语言叫做「非C语系语言」。&lt;/p&gt;
&lt;p&gt;对于大多非C语系语言，Doxygen都是支持的，Doxygen原生支持这些语言：IDL、Java、Javascript、C#、C、C++、D、PHP、Objective-C、Python、Fortran、VHDL。&lt;/p&gt;
&lt;p&gt;万一项目需要的语言（例如：Lua）Doxygen官方并不支持，那么只能自行编写「第三方语言扩展」来支持了。&lt;/p&gt;
&lt;h4 id=&#34;3-1-Doxygen官方支持的语言&#34;&gt;3.1 Doxygen官方支持的语言&lt;/h4&gt;
&lt;p&gt;见图3-1，文件名符合&lt;code&gt;FILE_PATTERNS&lt;/code&gt;都会被处理。其中包括了&lt;code&gt;.c&lt;/code&gt;、&lt;code&gt;.h&lt;/code&gt;、&lt;code&gt;.py&lt;/code&gt;等等。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-4.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果我们的扩展名并不在&lt;code&gt;FILE_PATTERNS&lt;/code&gt;内，那么可以加上去。例如我们项目下的所有&lt;code&gt;.ccc&lt;/code&gt;文件，其实是C语言代码（这很奇葩，举个例子而已）。那我们可以编辑Doxyfile配置文件满足这一需求，需要2个步骤。&lt;/p&gt;
&lt;p&gt;(1) 在&lt;code&gt;FILE_PATTERNS&lt;/code&gt;中添加&lt;code&gt;*.ccc&lt;/code&gt;，如图3-2&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-5.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;(2) 在&lt;code&gt;EXTENSION_MAPPING&lt;/code&gt;中添加映射规则&lt;code&gt;ccc=C&lt;/code&gt;，如图3-3。语法是&lt;code&gt;ext=language&lt;/code&gt;，其中language可以取的值有：IDL、Java、Javascript、C#、C、C++、D、PHP、Objective-C、Python、Fortran、VHDL。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-6.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;3-2-Doxygen官方不支持的语言&#34;&gt;3.2 Doxygen官方不支持的语言&lt;/h4&gt;
&lt;p&gt;以Lua语言为例，它的代码是长这样的：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-lua&#34; data-language=&#34;lua&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-lua&#34;&gt;-- \file lmath.h

--[[
    用于求一个角度的sin值，输入是字符串以便同时支持弧度制和角度制表示
    \li 弧度制用pi表示，例如：2pi表示一圈、0.5pi表示直角
    \li 角度制用d结尾，例如：360d表示一圈、90d表示直角
    \li 输入也可以是数值，例如：输入3.14159大约表示180度

    \param a 字符串类型，表示角度，用弧度制或角度制表示都行

    \return 返回sin运算的结果

    \todo 在xxx的情况下存在BUG，预计下一版本修复
--]]
function sin(a)
    return 1.123
end&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;可以看到Lua的语法既不像C也不像Python。本节以Lua为例，介绍如何为Doxygen编写Lua语言扩展。好吧，大多数人没有这种需求，这里就不介绍了。&lt;/p&gt;
&lt;h3 id=&#34;第4章-定制Doxygen的输出&#34;&gt;第4章 定制Doxygen的输出&lt;/h3&gt;
&lt;h4 id=&#34;4-1-定制页面样式&#34;&gt;4.1 定制页面样式&lt;/h4&gt;
&lt;p&gt;Doxygen输出的默认HTML比较难看，如图4-1。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-7.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果嫌生成的HTML不好看，可以自定义HTML页面头部、尾部以及页面整体CSS样式表。&lt;br&gt;
(1) 生成默认的风格的配置文件，敲这个命令：&lt;code&gt;doxygen -w html header.html footer.html customdoxygen.css&lt;/code&gt;，可以生成&lt;code&gt;header.html&lt;/code&gt;、&lt;code&gt;footer.html&lt;/code&gt;、&lt;code&gt;customdoxygen.css&lt;/code&gt;。&lt;br&gt;
(2) 根据自己的需求修改这三个文件。&lt;br&gt;
(3) 配置&lt;code&gt;HTML_HEADER&lt;/code&gt;、&lt;code&gt;HTML_FOOTER&lt;/code&gt;、&lt;code&gt;HTML_STYLESHEET&lt;/code&gt;指向修改后的文件，如图4-2。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-8.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;Doxygen默认的页面主色调大约是天蓝色的，可以通过&lt;code&gt;HTML_COLORSTYLE_HUE&lt;/code&gt;、&lt;code&gt;HTML_COLORSTYLE_SAT&lt;/code&gt;、&lt;code&gt;HTML_COLORSTYLE_GAMMA&lt;/code&gt;修改主色调，这3个配置分别对应色相、饱和度、Gamma校正，见图4-3。如果不太懂色相、饱和度是啥意思，请自行百度「色彩模式」或参考Photoshop相关教程。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-9.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;经过图4-3的修改，页面的主色调变为图4-4的样子。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-10.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;4-2-导航栏&#34;&gt;4.2 导航栏&lt;/h4&gt;
&lt;p&gt;Doxygen中「导航栏」有两种展示方式：Treeview和Index，分别是竖向和横向的，如图4-5。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-11.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;可以配置&lt;code&gt;DISABLE_INDEX&lt;/code&gt;和&lt;code&gt;GENERATE_TREEVIEW&lt;/code&gt;来控制是否显示它们，如图4-6。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-12.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;4-3-自定义「导航栏」的目录结构&#34;&gt;4.3 自定义「导航栏」的目录结构&lt;/h4&gt;
&lt;p&gt;我们已经知道Doxygen中「导航栏」有Treeview和Index两种了。这节介绍如何定制导航栏的目录结构。这需要三个步骤。&lt;br&gt;
(1) 执行&lt;code&gt;doxygen -l&lt;/code&gt;，生成&lt;code&gt;DoxygenLayout.xml&lt;/code&gt;文件&lt;br&gt;
(2) 编辑&lt;code&gt;DoxygenLayout.xml&lt;/code&gt;文件，修改其中的布局&lt;br&gt;
(3) 修改&lt;code&gt;LAYOUT_FILE&lt;/code&gt;配置，使其指向&lt;code&gt;DoxygenLayout.xml&lt;/code&gt;文件，如图4-7&lt;br&gt;
(4) 运行Doxygen&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-13.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;那么如何修改XML文件呢？默认的&lt;code&gt;DoxygenLayout.xml&lt;/code&gt;代码如下：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;doxygenlayout version&amp;#x3D;&amp;quot;1.0&amp;quot;&amp;gt;
  &amp;lt;navindex&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;mainpage&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;pages&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;modules&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;namespaces&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;namespacelist&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;namespacemembers&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;classes&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;classlist&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;classindex&amp;quot; visible&amp;#x3D;&amp;quot;$ALPHABETICAL_INDEX&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt; 
      &amp;lt;tab type&amp;#x3D;&amp;quot;hierarchy&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;classmembers&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;files&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;filelist&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;globals&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;examples&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;&amp;quot; intro&amp;#x3D;&amp;quot;&amp;quot;&amp;#x2F;&amp;gt;  
  &amp;lt;&amp;#x2F;navindex&amp;gt;
&amp;lt;&amp;#x2F;doxygenlayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;XML对应了导航栏的目录树结构，我们通过该文件改变布局。标签的&lt;code&gt;type&lt;/code&gt;属性取值除了上面列出的这些预定义值以外，还可以是&lt;code&gt;type=&amp;quot;user&amp;quot;&lt;/code&gt;或&lt;code&gt;type=&amp;quot;usergroup&amp;quot;&lt;/code&gt;，我们只能通过这两个&lt;code&gt;type&lt;/code&gt;自定义布局，例如下面这段代码，生成的效果如图4-8：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;doxygenlayout version&amp;#x3D;&amp;quot;1.0&amp;quot;&amp;gt;
  &amp;lt;navindex&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;usergroup&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;友情链接（演示如何外链）&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;百度&amp;quot; url&amp;#x3D;&amp;quot;http:&amp;#x2F;&amp;#x2F;www.baidu.com&amp;quot; &amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;163&amp;quot; url&amp;#x3D;&amp;quot;http:&amp;#x2F;&amp;#x2F;www.163.com&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;usergroup&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;数学库（演示如何链接文件）&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; url&amp;#x3D;&amp;quot;@ref math.h&amp;quot; title&amp;#x3D;&amp;quot;math&amp;quot; &amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; url&amp;#x3D;&amp;quot;@ref math2.h&amp;quot; title&amp;#x3D;&amp;quot;math2&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
    &amp;lt;tab type&amp;#x3D;&amp;quot;usergroup&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; title&amp;#x3D;&amp;quot;三角函数（演示链接函数、结构体）&amp;quot;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; url&amp;#x3D;&amp;quot;@ref sin&amp;quot; title&amp;#x3D;&amp;quot;sin&amp;quot; &amp;#x2F;&amp;gt;
      &amp;lt;tab type&amp;#x3D;&amp;quot;user&amp;quot; visible&amp;#x3D;&amp;quot;yes&amp;quot; url&amp;#x3D;&amp;quot;@ref sin2&amp;quot; title&amp;#x3D;&amp;quot;sin2&amp;quot; &amp;#x2F;&amp;gt;
    &amp;lt;&amp;#x2F;tab&amp;gt;
  &amp;lt;&amp;#x2F;navindex&amp;gt;
&amp;lt;&amp;#x2F;doxygenlayout&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211414-14.webp&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;4-4-完全自定义&#34;&gt;4.4 完全自定义&lt;/h4&gt;
&lt;p&gt;如果Doxygen输出的界面实在不入你的法眼，4.1~4.3介绍的定制化功能也不能彻底满足你的需求。那么你需要根据Doxygen输出的XML数据自行生成界面了。&lt;br&gt;
(1) 将&lt;code&gt;GENERATE_XML&lt;/code&gt;配置为&lt;code&gt;YES&lt;/code&gt;&lt;br&gt;
(2) 去输出目录寻找生成的XML文件，XML文件包括了函数信息、注释信息等&lt;br&gt;
(3) 自己写程序读取XML文件，并生成漂亮的文档&lt;/p&gt;
&lt;h3 id=&#34;第5章-Markdown支持&#34;&gt;第5章 Markdown支持&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;待补充完善&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Markdown在工业界是非常流行的文档格式，文件名以.md结尾，其简洁直观的语法深受广大程序员喜爱。对Markdown本身的介绍超出了本文范围，本章介绍Doxygen对Markdown的支持。&lt;/p&gt;
&lt;h4 id=&#34;5-1-为-md文件生成文档&#34;&gt;5.1 为.md文件生成文档&lt;/h4&gt;
&lt;h4 id=&#34;5-2-在代码注释中使用Markdown语法&#34;&gt;5.2 在代码注释中使用Markdown语法&lt;/h4&gt;
&lt;h3 id=&#34;第6章-搜索功能&#34;&gt;第6章 搜索功能&lt;/h3&gt;
&lt;h2 id=&#34;Gitlab-CI-CD使用&#34;&gt;Gitlab CI/CD使用&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://gitlab.com/pages/doxygen&#34;&gt;https://gitlab.com/pages/doxygen&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;结合Docker和Gitlab CI/CD使用案例&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/05/28/20220528211032.webp&#34; alt=&#34;Gitlab Doxygen运行效果如下&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;参考资源&#34;&gt;参考资源&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://doxygen.nl/&#34;&gt;Doxygen 官网&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.doxygen.nl/manual/docblocks.html#cppblock&#34;&gt;官网注释例子&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.jianshu.com/p/bf5afbbe183b&#34;&gt;Doxygen文档生成工具教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://cedar-renjun.github.io/2014/03/21/learn-doxygen-in-10-minutes/&#34;&gt;Doxygen 10 分钟入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://gitlab.com/pages/doxygen&#34;&gt;Gitlab CI/CD doxygen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="tools" />
        <category term="doxygen" />
        <updated>2022-05-28T12:30:11.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/3b296307/</id>
        <title>winrar去广告和破解</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/3b296307/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;WinRAR 是一款不错的解压缩软件，但还是收费软件，广告不少，今天就总结了一下网上的各路教程。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;/medias_webp/cover/winrar.webp&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;crack-winrar&#34;&gt;crack winrar&lt;/h2&gt;
&lt;p&gt;首先通过特殊方式获取软件许可：新建一个文本文档&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1920220319200929.png&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;在这个文本文档里输入内容：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-txt&#34; data-language=&#34;txt&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-txt&#34;&gt;RAR registration data&amp;#96;&amp;#96;Federal Agency &amp;#96;&amp;#96;for&amp;#96; &amp;#96;Education&amp;#96;&amp;#96;1000000 PC usage license&amp;#96;&amp;#96;UID&amp;#x3D;b621cca9a84bc5deffbf&amp;#96;&amp;#96;6412612250ffbf533df6db2dfe8ccc3aae5362c06d54762105357d&amp;#96;&amp;#96;5e3b1489e751c76bf6e0640001014be50a52303fed29664b074145&amp;#96;&amp;#96;7e567d04159ad8defc3fb6edf32831fd1966f72c21c0c53c02fbbb&amp;#96;&amp;#96;2f91cfca671d9c482b11b8ac3281cb21378e85606494da349941fa&amp;#96;&amp;#96;e9ee328f12dc73e90b6356b921fbfb8522d6562a6a4b97e8ef6c9f&amp;#96;&amp;#96;fb866be1e3826b5aa126a4d2bfe9336ad63003fc0e71c307fc2c60&amp;#96;&amp;#96;64416495d4c55a0cc82d402110498da970812063934815d81470829275&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103230820.png&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;然后将文件名改为：rarreg.key&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231031.png&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;再将这个文件导入WinRAR的安装文件夹&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231545.png&#34; alt=&#34;img&#34;&gt;&lt;br&gt;
&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231839.png&#34; alt=&#34;img&#34;&gt;&lt;br&gt;
这时点开关于WinRAR，已经获取许可。&lt;br&gt;
&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231800.png&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;去除广告&#34;&gt;去除广告&lt;/h2&gt;
&lt;p&gt;接下来使用Resource Hacker软件打开&lt;strong&gt;winrar&lt;/strong&gt;.exe&lt;br&gt;
&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231916.png&#34; alt=&#34;img&#34;&gt;&lt;br&gt;
进入字串表，找到“80”，删除“1267”和“1277”行点击绿色三角形按钮，编译。&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103231939.png&#34; alt=&#34;img&#34;&gt;&lt;br&gt;
然后：文件→另存为，进行保存。&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103232002.png&#34; alt=&#34;img&#34;&gt;&lt;br&gt;
然后对源文件：winrar.exe进行替换,注意，要关闭winrar软件&lt;br&gt;
&lt;img src=&#34;https://cimg1.17lai.site/data/2021/11/0320211103232039.png&#34; alt=&#34;img&#34;&gt;&lt;/p&gt;
&lt;p&gt;至此，已经完成破解和去广告了。&lt;/p&gt;
&lt;p&gt;参考来源 52pojie&lt;/p&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="crack" />
        <category term="tools" />
        <category term="winrar" />
        <updated>2022-03-19T12:00:47.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/44557ab0/</id>
        <title>第一次使用VS CODE时你应该指导的一切配置</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/44557ab0/"/>
        <content type="html">&lt;h2 id=&#34;前言&#34;&gt;前言&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;文章标题：《第一次使用 VS Code 时你应该知道的一切配置》。本文的最新内容，更新于 2021-10-09。大家完全不用担心这篇文章会过时，因为随着 VS Code 的版本更新和插件更新，本文也会随之更新。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;本文的最新内容，也会在&lt;a href=&#34;https://github.com/qianguyihao/Web/blob/master/00-%E5%89%8D%E7%AB%AF%E5%B7%A5%E5%85%B7/01-VS%20Code%E7%9A%84%E4%BD%BF%E7%94%A8.md&#34;&gt;GitHub&lt;/a&gt;上同步更新，欢迎 star。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;VS Code 软件实在是太酷、太好用了，越来越多的新生代互联网民工正在使用它。&lt;/p&gt;
&lt;p&gt;前端男神&lt;strong&gt;尤雨溪&lt;/strong&gt;大大这样评价 VS Code：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201152.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;有一点你可能会感到惊讶：VS Code 这款软件本身，是用 JavaScript 语言编写的（具体请自行查阅基于 JS 的 PC 客户端开发框架 &lt;code&gt;Electron&lt;/code&gt;）。Jeff Atwood 在 2007 年提出了著名的 Atwood 定律：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;任何能够用 JavaScript 实现的应用系统，最终都必将用 JavaScript 实现&lt;/strong&gt;。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jeff Atwood 这个人是谁不重要（他是 Stack Overflow 网站的联合创始人），重要的是这条定律。&lt;/p&gt;
&lt;p&gt;前端目前是处在春秋战国时代，各路英雄豪杰成为后浪，各种框架工具层出不穷，VS Code 软件无疑是大前端时代最骄傲的工具。&lt;/p&gt;
&lt;p&gt;如果你是做前端开发（JavaScript 编程语言为主），则完全可以将 VS Code 作为「&lt;strong&gt;主力开发工具&lt;/strong&gt;」。这款软件是为前端同学量身定制的，开箱即用。&lt;/p&gt;
&lt;p&gt;如果你是做其他语言方向的开发，并且不需要太复杂的集成开发环境，那么，你可以把 VS Code 作为「&lt;strong&gt;代码编辑器&lt;/strong&gt;」来使用，纵享丝滑。&lt;/p&gt;
&lt;p&gt;甚至是一些写文档、写作的同学，也经常把 VS Code 作为 markdown &lt;strong&gt;写作工具&lt;/strong&gt;，毫无违和感。&lt;/p&gt;
&lt;p&gt;退而求其次，即便你不属于以上任何范畴，你还可以把 VS Code 当作最简单的&lt;strong&gt;文本编辑器&lt;/strong&gt;来使用，完胜 Windows 系统自带的记事本。&lt;/p&gt;
&lt;p&gt;写下这篇文章，是顺势而为。&lt;/p&gt;
&lt;h2 id=&#34;一、惊艳登场：VS-Code-的介绍&#34;&gt;一、惊艳登场：VS Code 的介绍&lt;/h2&gt;
&lt;p&gt;VS Code 的全称是 Visual Studio Code，是一款开源的、免费的、跨平台的、高性能的、轻量级的代码编辑器。它在性能、语言支持、开源社区方面，都做得很不错。&lt;/p&gt;
&lt;p&gt;微软有两种软件：一种是 VS Code，一种是其他软件。&lt;/p&gt;
&lt;p&gt;在2015年4月29日的微软Build开发者大会上，微软宣布推出 VS Code之后，这个轻量级的编辑器成为全球无数开发者们最喜爱的开发工具。VS Code基于开源且跨平台的理念，每月都会进行迭代，并提供每天发布的 insider 版本（insider是微软的一种公测计划，类似于国内软件所说的内测版）。它拥有至少几万个插件，生态极为活跃和丰富。&lt;/p&gt;
&lt;h3 id=&#34;IDE-与-编辑器的对比&#34;&gt;IDE 与 编辑器的对比&lt;/h3&gt;
&lt;p&gt;IDE 和编辑器是有区别的：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;IDE&lt;/strong&gt;（Integrated Development Environment，集成开发环境）：对代码有较好的智能提示和相互跳转，同时侧重于工程项目，对项目的开发、调试工作有较好的图像化界面的支持，因此比较笨重。比如 Eclipse 的定位就是 IDE。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;编辑器&lt;/strong&gt;：要相对轻量许多，侧重于文本的编辑。比如 Sublime Text 的定位就是编辑器。再比如 Windows 系统自带的「记事本」就是最简单的编辑器。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;需要注意的是，VS Code 的定位是&lt;strong&gt;编辑器&lt;/strong&gt;，而非 IDE ，但 VS Code 又比一般的编辑器的功能要丰富许多。可以这样理解：VS Code 的体量是介于编辑器和 IDE 之间。VS Code 的使命，是让开发者在编辑器里拥有 IDE 那样的开发体验。&lt;/p&gt;
&lt;p&gt;VS Code流行起来之后，使用 Sublime Text、Atom 这类编辑器软件的人，自然就越来越少了。&lt;/p&gt;
&lt;h3 id=&#34;VS-Code-的特点&#34;&gt;VS Code 的特点&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;跨平台：支持 MacOS、Windows 和 Linux 等多个平台。在这多种平台下，拥有一致的用户界面和开发体验。&lt;/li&gt;
&lt;li&gt;开源：VS Code 的源代码以 MIT 协议开源。不仅代码开源，而且整个产品的开发计划和发布管理也都是开源的。VS Code团队每年都会在 GitHub 的Wiki上发布 &lt;a href=&#34;https://github.com/microsoft/vscode/wiki/Roadmap&#34;&gt;Roadmap&lt;/a&gt;，列出一整年的规划图。VS Code 软件的官方文档也托管在了 &lt;a href=&#34;https://github.com/Microsoft/vscode-docs&#34;&gt;GitHub&lt;/a&gt; 上。&lt;/li&gt;
&lt;li&gt;自带终端、图形化的调试工具、Git 版本控制。&lt;/li&gt;
&lt;li&gt;插件扩展：支持第三方插件，功能强大。既有中心化的插件市场，也可以直接在 VS Code里搜索你想要的插件。&lt;/li&gt;
&lt;li&gt;生态：社区生态活跃且丰富，社区氛围浓厚。&lt;/li&gt;
&lt;li&gt;自带  emmet：支持代码自动补全，快速生成简单的语法结构。要知道，这个功能在 Sublime Text中，得先安装插件才行。&lt;/li&gt;
&lt;li&gt;语法支持：VS Code 自带了 JavaScript、TypeScript 和 Node.js 的&lt;strong&gt;语法支持&lt;/strong&gt;，包括：&lt;strong&gt;语法高亮、代码智能提示和补全、括号匹配、颜色区分、代码片段提示&lt;/strong&gt;等。也就是说，你在书写 JS 和 TS 时，这些语法支持都是自带的。其他的一些语言，你需要先安装相应的&lt;strong&gt;扩展包&lt;/strong&gt;插件，就出现语法支持。&lt;/li&gt;
&lt;li&gt;在修改配置方面，既有图形化的配置界面，也有 基于 JSON 文件的配置方式，满足不同人群的使用习惯。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;前端利器之争：-VS-Code-与-WebStorm&#34;&gt;前端利器之争： VS Code 与 WebStorm&lt;/h3&gt;
&lt;p&gt;前端小白最喜欢问的一个问题是：哪个编辑器/IDE 好用？是 VS Code 还是 WebStorm （WebStorm 其实是 IntelliJ IDEA 的定制版）？我来做个对比：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;哪个更酷&lt;/strong&gt;：显然 VS Code 更酷。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;内存占用情况&lt;/strong&gt;：根据我的观察，VS Code 是很占内存的（尤其是当你打开多个窗口的时候），但如果你的内存条够用，使用起来是不会有任何卡顿的感觉的。相比之下，IntelliJ IDEA 不仅非常占内存，而且还非常卡顿。如果你想换个既轻量级、又不占内存的编辑器，最好还是使用「Sublime Text」编辑器。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;使用比例&lt;/strong&gt;：当然是 VS Code 更胜一筹。先不说别的，我就拿数据说话，我目前所在的研发团队有 200 人左右（120个后台、80个前端），他们绝大部分人都在用 VS Code 编码，妥妥的。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所以，如果你以后还问这个问题，那就真有些掉底了。&lt;/p&gt;
&lt;h3 id=&#34;VS-Code-的技术栈、核心组件&#34;&gt;VS Code 的技术栈、核心组件&lt;/h3&gt;
&lt;p&gt;了解 VS Code的技术栈和核心组件，可以让我们对 VS Code 有更深入的认识。此小段，了解即可。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;开发框架：Electron。Electron可以使用 Node.js + JS这样的技术栈开发桌面GUI应用程序。&lt;/li&gt;
&lt;li&gt;编辑器：Monaco Editor。Monaco Editor 是一款开源的在线代码编辑器，是 &lt;strong&gt;VS Code 浏览器版本&lt;/strong&gt;的最核心组件。&lt;a href=&#34;https://zhuanlan.zhihu.com/p/88828576&#34;&gt;#&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;编程语言：TypeScript。TypeScript 是  JavaScript的严格超集。TS 在JS的基础上添加了许多功能，引入了声明文件，而且支持类型扩展。TS 适合长期的、多人开发的大型项目开发。&lt;/li&gt;
&lt;li&gt;让编辑器支持语言功能：Language Server Protocol （LSP） 语言服务协议。LSP是编辑器/IDE 与语言服务器之间的一种协议，通过 JSON-PRC 传输消息，可以让编辑器嵌入并支持各种编程语言。开发者可以在编辑器中使用各种语言来编写程序。&lt;/li&gt;
&lt;li&gt;让编辑器支持调试功能：Debug Adapter Protocol（DAP）。DAP 是基于 JSON的协议，它抽象了开发工具与调试工具质检的通信。&lt;/li&gt;
&lt;li&gt;集成终端：Xterm.js。VS Code的集成终端是基于开源项目 &lt;a href=&#34;https://github.com/xtermjs/xterm.js/&#34;&gt;Xterm.js&lt;/a&gt; 进行开发的。Xterm.js 是一个使用 TS 开发的终端组件。另外，Xterm.js 并不是直接下来下来就能用的终端应用，它只是一个前端组件，可以与 bash这样的进程进行连接，然后让用户通过  Xterm.js 进行交互。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;VS-Code-的安装&#34;&gt;VS Code 的安装&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;VS Code 官网：&lt;a href=&#34;https://code.visualstudio.com&#34;&gt;https://code.visualstudio.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;VS Code 的安装很简单，直接去官网下载安装包，然后双击安装即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201230.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，直接点击 download，一键下载安装即可。&lt;/p&gt;
&lt;p&gt;VS Code支持以下平台：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201146.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;安装完成后的界面如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201237.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;VS  Code被分为以下五个区域：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;编辑器&lt;/li&gt;
&lt;li&gt;侧边栏&lt;/li&gt;
&lt;li&gt;状态栏&lt;/li&gt;
&lt;li&gt;活动栏&lt;/li&gt;
&lt;li&gt;面板&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;VS Code在功能上非常克制，只包含了大多数开发流程中所需要的基础模块，包括：编辑器、文件管理、窗口管理、首选项设置、终端等。&lt;/p&gt;
&lt;p&gt;你需要根据具体需要安装额外的组件或者插件。比如说，如果开发TS项目，则需要安装 TS编译器、ESLint、TSLint等编译工具。如果开发C语言项目，则需要安装gcc、Clang等编辑工具。&lt;/p&gt;
&lt;h2 id=&#34;二、崭露锋芒：VS-Code-快捷键&#34;&gt;二、崭露锋芒：VS Code 快捷键&lt;/h2&gt;
&lt;p&gt;VS Code 用得熟不熟，首先就看你是否会用快捷键。以下列出的内容，都是常用快捷键，而加粗部分的快捷键，使用频率则非常高。&lt;/p&gt;
&lt;p&gt;任何工具，掌握 20%的技能，足矣应对 80% 的工作。既然如此，你可能会问：那就只保留 20% 的特性，不久可以满足 80%的用户了吗？&lt;/p&gt;
&lt;p&gt;但我想说的是：&lt;strong&gt;那从来都不是同样的 20%&lt;/strong&gt;，每个人都会用到不同的功能。&lt;/p&gt;
&lt;p&gt;掌握下面这些高频核心快捷键，你和你的工具，足矣露出锋芒。&lt;/p&gt;
&lt;h3 id=&#34;1、工作区快捷键&#34;&gt;1、工作区快捷键&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Shift + P&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + Shift + P&lt;/strong&gt;，F1&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;显示命令面板&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + B&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + B&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;显示/隐藏侧边栏&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很实用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;code&gt;Cmd + \&lt;/code&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;code&gt;Ctrl + \&lt;/code&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;拆分为多个编辑器&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;【重要】抄代码利器&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + 1、2&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + 1、2&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;聚焦到第 1、第 2 个编辑器&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;同上重要&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + +、Cmd + -&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;ctrl + +、ctrl + -&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将工作区放大/缩小（包括代码字体、左侧导航栏）&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在投影仪场景经常用到&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + J&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + J&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;显示/隐藏控制台&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Shift + N&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + Shift + N&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;重新开一个软件的窗口&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + Shift + W&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Shift + W&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;关闭软件的当前窗口&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + N&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + N&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;新建文件&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + W&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + W&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;关闭当前文件&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;2、跳转操作&#34;&gt;2、跳转操作&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + `                       | 没有                   | 在同一个软件的&lt;strong&gt;多个工作区&lt;/strong&gt;之间切换                   | 使用很频繁         |&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Option + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Pagedown/Pageup&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在已经打开的&lt;strong&gt;多个文件&lt;/strong&gt;之间进行切换&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;非常实用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Tab&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Tab&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在已经打开的多个文件之间进行跳转&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;不如上面的快捷键快&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + Shift + O&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + shift + O&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前文件的各种&lt;strong&gt;方法之间&lt;/strong&gt;（符号：Symbol）进行跳转&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + T&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + T&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前&lt;strong&gt;工作区&lt;/strong&gt;的各种方法之间（符号：Symbol）进行跳转&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + G&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + G&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;跳转到指定行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;code&gt;Cmd+Shift+\&lt;/code&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;code&gt;Ctrl+Shift+\&lt;/code&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;跳转到匹配的括号&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;3、移动光标&#34;&gt;3、移动光标&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;方向键&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;方向键&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在&lt;strong&gt;单个字符&lt;/strong&gt;之间移动光标&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;大家都知道&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;option + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在&lt;strong&gt;单词&lt;/strong&gt;之间移动光标&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Fn + 左右方向键&lt;/strong&gt;（或 Win + 左右方向键）&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将光标定位到当前行的最左侧、最右侧（在&lt;strong&gt;整行&lt;/strong&gt;之间移动光标）&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Option + Alt + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Alt + Shift + 左右方向键&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;左右扩大/缩小选中的范围&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很酷，极为高效&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + ↑&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Home&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将光标定位到文件的第一行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + ↓&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + End&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将光标定位到文件的最后一行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + Shift + \&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在&lt;strong&gt;代码块&lt;/strong&gt;之间移动光标&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;4、编辑操作&#34;&gt;4、编辑操作&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + C&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + C&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;复制&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + X&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + X&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;剪切&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + C&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + V&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;粘贴&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Enter&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + Enter&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前行的下方新增一行，然后跳至该行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;即使光标不在行尾，也能快速向下插入一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd+Shift+Enter&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl+Shift+Enter&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前行的上方新增一行，然后跳至该行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;即使光标不在行尾，也能快速向上插入一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Option + ↑&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Alt + ↑&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将代码向上移动&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Option + ↓&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Alt + ↓&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将代码向下移动&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Option + Shift + ↑&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Alt + Shift + ↑&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将代码向上复制一行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Option + Shift + ↓&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Alt + Shift + ↓&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将代码向下复制一行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;写重复代码的利器&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;另外再补充一点：将光标点击到某一行的任意位置时，默认就已经是&lt;strong&gt;选中全行&lt;/strong&gt;了，此时可以直接&lt;strong&gt;复制&lt;/strong&gt;或&lt;strong&gt;剪切&lt;/strong&gt;，无需点击鼠标。这个非常实用，是所有的编辑操作中，使用得最频繁的。它可以有以下使用场景：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;场景1：假设光标现在处于第5行的&lt;strong&gt;任意位置&lt;/strong&gt;，那么，直接依次按下 &lt;code&gt;Cmd + C&lt;/code&gt; 和 &lt;code&gt;Cmd + V&lt;/code&gt;，就会把这行代码复制到第6行。继续按 &lt;code&gt;Cmd + C&lt;/code&gt; 和 &lt;code&gt;Cmd + V&lt;/code&gt;，就会把这行代码复制到第7行。copy代码so easy。&lt;/li&gt;
&lt;li&gt;场景2：假设光标现在处于第5行，那么，先按下 &lt;code&gt;Cmd + C&lt;/code&gt;，然后按两下&lt;code&gt;↑&lt;/code&gt; 方向键，此时光标处于第3行；紧接着，继续按下&lt;code&gt;Cmd + V&lt;/code&gt;，就会把刚刚那行代码复制到第3行，原本处于第3行的代码会整体&lt;strong&gt;下移&lt;/strong&gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;你看到了没？上面的两个场景，我全程没有使用鼠标，只通过简单的复制粘贴和方向键，就做到了如此迅速的copy代码。你说是不是很高效？&lt;/p&gt;
&lt;h3 id=&#34;5、删除操作&#34;&gt;5、删除操作&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + shift + K&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + Shift + K&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除整行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;「Cmd + X」的作用是剪切，但也可以删除整行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;option + Backspace&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + Backspace&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除光标之前的一个单词&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;英文有效，很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;option + delete&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + delete&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除光标之后的一个单词&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Backspace&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除光标之前的整行内容&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + delete&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除光标之后的整行内容&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;备注：上面所讲到的移动光标、编辑操作、删除操作的快捷键，在其他编辑器里，大部分都适用。&lt;/p&gt;
&lt;h3 id=&#34;6、多光标选择-多光标编辑&#34;&gt;6、多光标选择/多光标编辑&lt;/h3&gt;
&lt;p&gt;多光标选择在编程的&lt;strong&gt;提效&lt;/strong&gt;方面可谓立下了汗马功劳。因为比较难记住，所以你要时不时回来复习这一段。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mac 快捷键&lt;/th&gt;
&lt;th&gt;Win 快捷键&lt;/th&gt;
&lt;th&gt;作用&lt;/th&gt;
&lt;th&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Option + 鼠标连续点击任意位置&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Alt + 鼠标连续点击任意位置&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;在任意位置，同时出现多个光标&lt;/td&gt;
&lt;td&gt;很容易记住&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cmd + D&lt;/td&gt;
&lt;td&gt;Ctrl + D&lt;/td&gt;
&lt;td&gt;将光标放在某个单词的位置（或者先选中某个单词），然后反复按下「 &lt;strong&gt;Cmd + D&lt;/strong&gt; 」键， 即可将下一个相同的词逐一加入选择。&lt;/td&gt;
&lt;td&gt;较常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Cmd + Shift + L&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Ctrl + Shift + L&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;将光标放在某个单词的位置（或者先选中某个单词），然后按下快捷键，则所有的相同内容处，都会出现光标。&lt;/td&gt;
&lt;td&gt;很常用。比如变量重命名的时候，就经常用到&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;7、多列选择-多列编辑&#34;&gt;7、多列选择/多列编辑&lt;/h3&gt;
&lt;p&gt;多列选择是更高效的多光标选择，所以单独列成一小段。&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mac 快捷键&lt;/th&gt;
&lt;th&gt;Win 快捷键&lt;/th&gt;
&lt;th&gt;作用&lt;/th&gt;
&lt;th&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Cmd + Option + 上下键&lt;/td&gt;
&lt;td&gt;Ctrl + Alt + 上下键&lt;/td&gt;
&lt;td&gt;在连续的多列上，同时出现多个光标&lt;/td&gt;
&lt;td&gt;较常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Option + Shift + 鼠标拖动&lt;/td&gt;
&lt;td&gt;Alt + Shift + 鼠标拖动&lt;/td&gt;
&lt;td&gt;按住快捷键，然后把鼠标从区域的左上角拖至右下角，即可在选中区域的每一行末尾，出现光标。&lt;/td&gt;
&lt;td&gt;很神奇的操作，较常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Option + Shift + i&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Alt + Shift + I&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;选中一堆文本后，按下快捷键，既可在&lt;strong&gt;每一行的末尾&lt;/strong&gt;都出现一个光标。&lt;/td&gt;
&lt;td&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;8、编程语言相关&#34;&gt;8、编程语言相关&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + /&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + /&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;添加单行注释&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Option + Shift + F&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Alt + shift + F&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;代码格式化&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;F2&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;F2&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;以重构的方式进行&lt;strong&gt;重命名&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;改代码备&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + J&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将多行代码合并为一行&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Win 用户可在命令面板搜索”合并行“&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd +&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + U&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + U&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将光标的移动回退到上一个位置&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;撤销光标的移动和选择&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;9、搜索相关&#34;&gt;9、搜索相关&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Mac 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;Win 快捷键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;作用&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + Shift + F&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + Shift +F&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;全局搜索代码&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很常用&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + P&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Ctrl + P&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前的项目工程里，&lt;strong&gt;全局&lt;/strong&gt;搜索文件名&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Cmd + F&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Ctrl + F&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前文件中搜索代码，光标在搜索框里&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;Cmd + G&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;F3&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前文件中搜索代码，光标仍停留在编辑器里&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;很巧妙&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;10、自定义快捷键&#34;&gt;10、自定义快捷键&lt;/h3&gt;
&lt;p&gt;按住快捷键「Cmd + Shift + P」，弹出命令面板，在命令面板中输入“快捷键”，可以进入快捷键的设置。&lt;/p&gt;
&lt;p&gt;当然，你也可以选择菜单栏「偏好设置 --&amp;gt; 键盘快捷方式」，进入快捷键的设置：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201244.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;11、快捷键列表&#34;&gt;11、快捷键列表&lt;/h3&gt;
&lt;p&gt;你可以点击 VS Code 左下角的齿轮按钮，效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201139.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，在展开的菜单中选择「键盘快捷方式」，就可以查看和修改所有的快捷键列表了：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201333.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;快捷键参考表（官方）&#34;&gt;快捷键参考表（官方）&lt;/h3&gt;
&lt;p&gt;VS Code官网提供了 PDF版本的键盘快捷键参考表，转需：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows版本：&lt;a href=&#34;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf&#34;&gt;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mac 版本：&lt;a href=&#34;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf&#34;&gt;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Linux版本：&lt;a href=&#34;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf&#34;&gt;https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;我们在 VS  Code软件里通过菜单栏「帮助–&amp;gt;键盘快捷方式参考」也可以打开相应平台的快捷键大全（PDF版本）。&lt;/p&gt;
&lt;h2 id=&#34;三、高端访问：命令面板的使用&#34;&gt;三、高端访问：命令面板的使用&lt;/h2&gt;
&lt;p&gt;Mac 用户按住快捷键 &lt;code&gt;Cmd+Shift+P&lt;/code&gt; （Windows 用户按住快捷键&lt;code&gt;Ctrl+Shift+P&lt;/code&gt;），可以打开快速命令面板。效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201339.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;命令面板的作用是&lt;strong&gt;希望解放开发者的鼠标，让一些操作和配置可以直接通过键盘进行&lt;/strong&gt;。如果让开发者记住所有的配置项在菜单的哪个位置是不现实的，而且有些命令并不在菜单中。&lt;/p&gt;
&lt;p&gt;有了命令面板之后，如果你需要修改一些设置项，或者进行一些快捷操作，则可以通过「命令面板」来操作，效率会更高。接下来列举一些。&lt;/p&gt;
&lt;h3 id=&#34;1、VS-Code-设置为中文语言&#34;&gt;1、VS Code 设置为中文语言&lt;/h3&gt;
&lt;p&gt;Mac 用户按住快捷键 &lt;code&gt;Cmd+Shift+P&lt;/code&gt; （Windows 用户按住快捷键&lt;code&gt;Ctrl+Shift+P&lt;/code&gt;），打开命令面板。&lt;/p&gt;
&lt;p&gt;在命令面板中，输入&lt;code&gt;Configure Display Language&lt;/code&gt;，选择&lt;code&gt;Install additional languages&lt;/code&gt;，然后安装插件&lt;code&gt;Chinese (Simplified) Language Pack for Visual Studio Code&lt;/code&gt;即可。&lt;/p&gt;
&lt;p&gt;或者，我们可以直接安装插件&lt;code&gt;Chinese (Simplified) Language Pack for Visual Studio Code&lt;/code&gt;，是一样的。&lt;/p&gt;
&lt;p&gt;安装完成后，重启 VS Code。&lt;/p&gt;
&lt;h3 id=&#34;2、设置字体大小&#34;&gt;2、设置字体大小&lt;/h3&gt;
&lt;p&gt;在命令面板输入“字体”，可以进行字体的设置，效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201251.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;当然，你也可以在菜单栏，选择「首选项-设置-常用设置」，在这个设置项里修改字体大小。&lt;/p&gt;
&lt;h3 id=&#34;3、快捷键设置&#34;&gt;3、快捷键设置&lt;/h3&gt;
&lt;p&gt;在命令面板输入“快捷键”，就可以进入快捷键的设置。&lt;/p&gt;
&lt;h3 id=&#34;4、大小写转换&#34;&gt;4、大小写转换&lt;/h3&gt;
&lt;p&gt;选中文本后，在命令面板中输入&lt;code&gt;transfrom&lt;/code&gt;，就可以修改文本的大小写了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201132.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;5、使用命令行启动-VS-Code&#34;&gt;5、使用命令行启动 VS Code&lt;/h3&gt;
&lt;p&gt;（1）输入快捷键「Cmd + Shift + P 」，选择&lt;code&gt;install code command&lt;/code&gt;：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201258.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（2）使用命令行：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt;命令：启动 VS Code 软件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;code pathName/fileName&lt;/code&gt;命令：通过 VS Code 软件打开指定目录/指定文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;备注：这种方法快捷简单，但是在电脑重启之后就失效了。稍后在第五段，我会介绍更常见的方法。&lt;/p&gt;
&lt;h3 id=&#34;6、修改特定编程语言的设置项&#34;&gt;6、修改特定编程语言的设置项&lt;/h3&gt;
&lt;p&gt;输入快捷键「Cmd + Shift + P 」打开命令面板，然后输入并执行 &lt;code&gt;Configure Language Specific Settings&lt;/code&gt;即可。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201304.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;四、私人订制：VS-Code-的常见配置&#34;&gt;四、私人订制：VS Code 的常见配置&lt;/h2&gt;
&lt;h3 id=&#34;0、设置项介绍&#34;&gt;0、设置项介绍&lt;/h3&gt;
&lt;p&gt;在修改 VS Code配置之前，我们需要知道，在哪里可以找到设置项的入口。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;方式1&lt;/strong&gt;：Mac用户选择菜单栏「Code–&amp;gt; 首选项–&amp;gt;设置」，即可打开配置项：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201346.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;方式2&lt;/strong&gt;：点击软件右下角的设置图标：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201347.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201125.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;如上图所示，VS Code提供两种不同范围的设置：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;用户&lt;/strong&gt;设置：全局生效。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;工作区&lt;/strong&gt;设置：只针对当前项目生效。工作区设置会覆盖用户设置。适用于团队协作场景。工作区的设置文件是保存在当前项目根目录的&lt;code&gt;.vscode/settings.json&lt;/code&gt;中，可以被提交到Git仓库，方便共享给项目组的其他成员。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;操作技巧：&lt;/p&gt;
&lt;p&gt;（1）我们可以在设置面板的顶部搜索框，输入关键词，就能迅速定位到你想要的设置项。&lt;/p&gt;
&lt;p&gt;（2）上图中，点击右上角的icon，可以通过 json文件的形式修改设置项。&lt;/p&gt;
&lt;h3 id=&#34;1、修改主题&#34;&gt;1、修改主题&lt;/h3&gt;
&lt;p&gt;1）修改颜色主题：&lt;/p&gt;
&lt;p&gt;选择菜单栏「Code --&amp;gt; 首选项 --&amp;gt; 颜色主题」：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201353.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;在弹出的对话框中，挑选你一个你喜欢的的颜色主题吧，或者安装其他颜色的主题：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201119.png&#34; alt=&#34;20211013_1018&#34;&gt;&lt;/p&gt;
&lt;p&gt;或者在设置项里搜索&lt;code&gt;Workbench: Color Theme&lt;/code&gt;，进行修改。&lt;/p&gt;
&lt;p&gt;2）修改文件图标的主题：&lt;/p&gt;
&lt;p&gt;选择菜单栏「Code --&amp;gt; 首选项 --&amp;gt; 文件图标主题」：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201113.png&#34; alt=&#34;20211013_1015&#34;&gt;&lt;/p&gt;
&lt;p&gt;在弹出的对话框中，挑选你一个你喜欢的的主题吧，或者安装其他的主题：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201112.png&#34; alt=&#34;20211013_1019&#34;&gt;&lt;/p&gt;
&lt;p&gt;或者在设置项里搜索&lt;code&gt;Workbench: Icon Theme&lt;/code&gt;，进行修改。&lt;/p&gt;
&lt;h3 id=&#34;2、面包屑（Breadcrumb）导航&#34;&gt;2、面包屑（Breadcrumb）导航&lt;/h3&gt;
&lt;p&gt;打开 VS Code 的设置项，选择「用户设置 -&amp;gt; 工作台 -&amp;gt; 导航路径」，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201400.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，将红框部分打钩即可。&lt;/p&gt;
&lt;p&gt;设置成功后，我们就可以查看到当前文件的「层级结构」，非常方便。如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201106.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;有了这个面包屑导航，我们可以点击它，在任意目录、任意文件之间随意跳转。使用频繁非常高。&lt;/p&gt;
&lt;h3 id=&#34;3、是否显示代码的行号&#34;&gt;3、是否显示代码的行号&lt;/h3&gt;
&lt;p&gt;VS Code 默认显示代码的行号。你可以在设置项里搜索 &lt;code&gt;editor.lineNumbers&lt;/code&gt;修改设置，配置项如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201105.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;我建议保留这个设置项，无需修改。&lt;/p&gt;
&lt;h3 id=&#34;4、右侧是否显示代码的缩略图&#34;&gt;4、右侧是否显示代码的缩略图&lt;/h3&gt;
&lt;p&gt;如果某个文件的代码量很大，缩略图就很有用了，可以预览全局，并在当前文件中快速跳转。&lt;/p&gt;
&lt;p&gt;VS Code 会在代码的右侧，默认显示缩略图。你可以在设置项里搜索 &lt;code&gt;editor.minimap&lt;/code&gt; 进行设置，配置项如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201407.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上面这张图，你仔细琢磨下会发现，中文翻译十分精准。&lt;/p&gt;
&lt;h3 id=&#34;5、将当前行代码高亮显示（更改光标所在行的背景色）&#34;&gt;5、将当前行代码高亮显示（更改光标所在行的背景色）&lt;/h3&gt;
&lt;p&gt;当我们把光标放在某一行时，这一行的背景色并没有发生变化。如果想&lt;strong&gt;高亮显示&lt;/strong&gt;当前行的代码，需要设置两步：&lt;/p&gt;
&lt;p&gt;（1）在设置项里搜索&lt;code&gt;editor.renderLineHighlight&lt;/code&gt;，将选项值设置为&lt;code&gt;all&lt;/code&gt;或者&lt;code&gt;line&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）在设置项里增加如下内容：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-json&#34; data-language=&#34;json&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;&amp;quot;workbench.colorCustomizations&amp;quot;: &amp;#123;
    &amp;quot;editor.lineHighlightBackground&amp;quot;: &amp;quot;#00000090&amp;quot;,
    &amp;quot;editor.lineHighlightBorder&amp;quot;: &amp;quot;#ffffff30&amp;quot;
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;上方代码，第一行代码的意思是：修改光标所在行的背景色（背景色设置为全黑，不透明度 90%）；第二行代码的意思是：修改光标所在行的边框色。&lt;/p&gt;
&lt;h3 id=&#34;6、改完代码后立即自动保存&#34;&gt;6、改完代码后立即自动保存&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;方式一&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;改完代码后，默认不会自动保存。你可以在设置项里搜索&lt;code&gt;files.autoSave&lt;/code&gt;，修改参数值为&lt;code&gt;afterDelay&lt;/code&gt;  ，即可自动保存。如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201514.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;files.autoSave的参数值有以下几种：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;off（默认值）：不自动保存。&lt;/li&gt;
&lt;li&gt;afterDelay（建议配置）：文件修改超过一定时间（默认1秒）后，就自动保存。&lt;/li&gt;
&lt;li&gt;onFocusChange：当前编辑器失去焦点时，则自动保存。如果我们将配置项修改为&lt;code&gt;onFocusChange&lt;/code&gt;之后，那么，当光标离开该文件后，这个文件就会自动保存了。&lt;/li&gt;
&lt;li&gt;onWindowChange：VS  Code软件失去焦点时，则自动保存。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;方式二&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;当然，你也可以直接在菜单栏选择「文件-自动保存」。勾选后，当你写完代码后，文件会立即实时保存。&lt;/p&gt;
&lt;h3 id=&#34;7、热退出&#34;&gt;7、热退出&lt;/h3&gt;
&lt;p&gt;当VS Code退出后，它可以记住未保存的文件。如果你希望达到这种效果，那么，你需要先将设置项&lt;code&gt;files.hotExit&lt;/code&gt;的值改为 &lt;code&gt;onExitAndWindowClose&lt;/code&gt;。这个配置项要不要改，看你个人需要。比如我自己平时设置的值是&lt;code&gt;onExit&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201413.png&#34; alt=&#34;20211012_2014&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;8、保存代码后，是否立即格式化&#34;&gt;8、保存代码后，是否立即格式化&lt;/h3&gt;
&lt;p&gt;保存代码后，默认&lt;strong&gt;不会立即&lt;/strong&gt;进行代码的格式化。你可以在设置项里搜索&lt;code&gt;editor.formatOnSave&lt;/code&gt;查看该配置项：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201058.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;我觉得这个配置项保持默认就好，不用打钩。&lt;/p&gt;
&lt;h3 id=&#34;9、自动格式化粘贴的内容&#34;&gt;9、自动格式化粘贴的内容&lt;/h3&gt;
&lt;p&gt;在设置项里搜索 &lt;code&gt;editor.formatOnPaste&lt;/code&gt;，将设置项改为&lt;code&gt;true&lt;/code&gt;：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201059.png&#34; alt=&#34;20211012_1049&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;10、设置字体大小&#34;&gt;10、设置字体大小&lt;/h3&gt;
&lt;p&gt;在设置项里搜索&lt;code&gt;fontSize&lt;/code&gt;，然后根据需要设置各种模块的字体大小：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201420.png&#34; alt=&#34;20211012_1053&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;11、空格-or-制表符&#34;&gt;11、空格 or 制表符&lt;/h3&gt;
&lt;p&gt;VS Code 会根据你所打开的文件来决定该使用空格还是制表。也就是说，如果你的项目中使用的都是制表符，那么，当你在写新的代码时，按下 tab 键后，编辑器就会识别成制表符。&lt;/p&gt;
&lt;p&gt;（1）建议的设置项如下：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;editor.detectIndentation&lt;/strong&gt;：自动检测（默认开启）。建议把这个配置项修改为 false，截图如下：&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201052.png&#34; alt=&#34;20211012_1139&#34;&gt;&lt;/p&gt;
&lt;p&gt;这样做，是为了取消系统的自动缩进，建议自己手动格式化比较好。 参考链接：&lt;a href=&#34;https://www.yisu.com/zixun/327399.html&#34;&gt;https://www.yisu.com/zixun/327399.html&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;editor.insertSpaces&lt;/strong&gt;：按 Tab 键时插入空格（默认值为true）。截图如下：&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201523.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;editor.tabSize&lt;/strong&gt;：一个制表符默认等于四个空格。截图如下：&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201530.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（2）状态栏也会显示当前的缩进值。点击状态栏，可以直接修改 tabSize 缩进值：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201045.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（3）另外，我们还可以安装 prettier 插件，设置代码在格式化时默认缩进值。prettier 是做代码格式化的最常见工具。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201536.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（4）去掉每一行末尾的空格。在设置项里搜索&lt;code&gt;空格&lt;/code&gt;或者&lt;code&gt;&amp;quot;files.trimTrailingWhitespace&amp;quot;&lt;/code&gt;，将值设置为 true：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201858.png&#34; alt=&#34;20211012_1231&#34;&gt;&lt;/p&gt;
&lt;p&gt;一般来说，每一行代码末尾的空格是多余的，所以建议去掉。&lt;/p&gt;
&lt;h3 id=&#34;12、直观地显示代码里的空格和缩进-✨&#34;&gt;12、直观地显示代码里的空格和缩进 ✨&lt;/h3&gt;
&lt;p&gt;代码里如果有缩进或者空格，肉眼是看不出来的，但是我们可以修改配置项，把它揪出来。&lt;/p&gt;
&lt;p&gt;在配置项里搜索&lt;code&gt;editor.renderWhitespace&lt;/code&gt;，修改为&lt;code&gt;all&lt;/code&gt;：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201039.png&#34; alt=&#34;20211012_1150&#34;&gt;&lt;/p&gt;
&lt;p&gt;修改之后，代码里的空格、缩进的展示效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201905.png&#34; alt=&#34;20211012_1258&#34;&gt;&lt;/p&gt;
&lt;p&gt;看到了没？哪里有空格、哪里是缩进，全都一目了然。&lt;/p&gt;
&lt;h3 id=&#34;13、新建文件后的默认文件类型&#34;&gt;13、新建文件后的默认文件类型&lt;/h3&gt;
&lt;p&gt;当我们按下快捷键「Cmd + N」新建文件时，VS Code 默认无法识别这个文件到底是什么类型的，因此也就无法识别相应的语法高亮。&lt;/p&gt;
&lt;p&gt;如果你想修改默认的文件类型，可以在设置项里搜索&lt;code&gt;files.defaultLanguage&lt;/code&gt;，设置项如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201542.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中的红框部分，填入你期望的默认文件类型。我填的是&lt;code&gt;html&lt;/code&gt;类型，你也可以填写成 &lt;code&gt;javascript&lt;/code&gt; 或者 &lt;code&gt;markdown&lt;/code&gt;，或者其他的语言类型。&lt;/p&gt;
&lt;h3 id=&#34;14、删除文件时，是否弹出确认框&#34;&gt;14、删除文件时，是否弹出确认框&lt;/h3&gt;
&lt;p&gt;当我们在 VS Code 中删除文件时，默认会弹出确认框。如果你想修改设置，可以在设置项里搜索&lt;code&gt;xplorer.confirmDelete&lt;/code&gt;。截图如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201032.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;我建议这个设置项保持默认的打钩就好，不用修改。删除文件前的弹窗提示，也是为了安全考虑，万一手贱不小心删了呢？&lt;/p&gt;
&lt;h3 id=&#34;15、在新窗口打开文件-文件夹&#34;&gt;15、在新窗口打开文件/文件夹&lt;/h3&gt;
&lt;p&gt;通过 &lt;code&gt;window.openFoldersInNewWindow&lt;/code&gt;（默认值为off）和&lt;code&gt;window.openFilesInNewWindow&lt;/code&gt;（默认值为default），可以配置在打开文件夹、打开文件时，是否开启一个新的窗口。我个人建议，把这两个配置项都设置为 on，避免旧的窗口被覆盖：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201549.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;补充知识—— &lt;code&gt;window.restoreWindows&lt;/code&gt;可以用来配置 如何恢复之前的会话窗口。涉及到的场景是：你把 VS Code 关闭了，然后又打开了，是否要展示之前打开过的文件、文件夹？参数值有以下几种：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;one（默认配置）：只会重新打开上一次回话中最后操作的那一个窗口。&lt;/li&gt;
&lt;li&gt;none：打开一个空的窗口，不包含任何文件、文件夹。&lt;/li&gt;
&lt;li&gt;all（建议配置）：恢复上一次会话中的所有窗口。&lt;/li&gt;
&lt;li&gt;folders：恢复上一次会话中包含文件夹的窗口。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201026.png&#34; alt=&#34;20211012_1704&#34;&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;接下来，我们来讲一些更高级的操作。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;五、纵享丝滑：常见操作和使用技巧&#34;&gt;五、纵享丝滑：常见操作和使用技巧&lt;/h2&gt;
&lt;h3 id=&#34;1、快速生成HTML骨架&#34;&gt;1、快速生成HTML骨架&lt;/h3&gt;
&lt;p&gt;先新建一个空的html文件，然后通过以下方式，可以快速生成html骨架。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;方式1&lt;/strong&gt;：输入&lt;code&gt;!&lt;/code&gt;，然后按下&lt;code&gt;enter&lt;/code&gt;键，即可生成html骨架。如下图：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201555.gif&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;方式2&lt;/strong&gt;：输入&lt;code&gt;html:5&lt;/code&gt;，然后按住 &lt;code&gt;Tab&lt;/code&gt;键，即可生成html骨架。&lt;/p&gt;
&lt;p&gt;生成的骨架，内容如下：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;!DOCTYPE html&amp;gt;
&amp;lt;html lang&amp;#x3D;&amp;quot;en&amp;quot;&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta charset&amp;#x3D;&amp;quot;UTF-8&amp;quot;&amp;gt;
    &amp;lt;meta http-equiv&amp;#x3D;&amp;quot;X-UA-Compatible&amp;quot; content&amp;#x3D;&amp;quot;IE&amp;#x3D;edge&amp;quot;&amp;gt;
    &amp;lt;meta name&amp;#x3D;&amp;quot;viewport&amp;quot; content&amp;#x3D;&amp;quot;width&amp;#x3D;device-width, initial-scale&amp;#x3D;1.0&amp;quot;&amp;gt;
    &amp;lt;title&amp;gt;Document&amp;lt;&amp;#x2F;title&amp;gt;
&amp;lt;&amp;#x2F;head&amp;gt;
&amp;lt;body&amp;gt;

&amp;lt;&amp;#x2F;body&amp;gt;
&amp;lt;&amp;#x2F;html&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;有了上面的html骨架之后，我们就可以快乐地在里面插入CSS 代码和 JS 代码。&lt;/p&gt;
&lt;h3 id=&#34;2、并排编辑：左右（上下）显示多个编辑器窗口（copy代码利器）&#34;&gt;2、并排编辑：左右（上下）显示多个编辑器窗口（copy代码利器）&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;并排编辑是所有的编辑操作中最常用的一个技巧，十分有用。比如我们在开发一个项目时，可能需要同时打开 HTML 文件和 CSS 文件，很常见。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mac 用户按住快捷键 &lt;code&gt;Cmd + \&lt;/code&gt;， Windows 用户按住快捷键&lt;code&gt;Ctrl + \&lt;/code&gt;，即可同时打开多个编辑器窗口，进行并排编辑。效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201020.gif&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;按快捷键「Cmd + 1 」切换到左边的窗口，按快捷键「Cmd + 2 」切换到右边的窗口，以此类推。随时随地，想切就切。&lt;/p&gt;
&lt;p&gt;学会了这一招，以后 copy 代码的时候，leader 再也不用担心我抄得慢了，一天工资到手。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;当然，使用快捷键&lt;code&gt;Cmd + \&lt;/code&gt;只是其中一种方式，我们还有很多种方式打开并行编辑。我们来做一个汇总。&lt;/p&gt;
&lt;p&gt;如果你已经打开了一个编辑器，那么可以通过以下几种方式在另一侧打开另一个编辑器：（按照使用频率，从高到低排序）&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;使用快捷键&lt;code&gt;Cmd + \&lt;/code&gt;将编辑器一分为二。&lt;/li&gt;
&lt;li&gt;使用快捷键&lt;code&gt;Cmd + P&lt;/code&gt;调出文件列表，选择要打开的文件，然后按下 &lt;code&gt;Cmd + Enter&lt;/code&gt;快捷键。【重要】&lt;/li&gt;
&lt;li&gt;按住 Option 键的同时，单击资源管理器的文件（Windows 用户是按 Alt 键）。&lt;/li&gt;
&lt;li&gt;点击编辑器右上角的 &lt;code&gt;Split Editor&lt;/code&gt;按钮。&lt;/li&gt;
&lt;li&gt;选择菜单栏「查看–&amp;gt; 编辑器布局」，然后选择你具体想要的布局，如下图所示：&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201602.png&#34; alt=&#34;20211012_1451&#34;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;通过拖拽，把当前文件移动到任意一侧。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;补充知识：通过配置项&lt;code&gt;worbench.editor.OpenSideBySideDirection&lt;/code&gt;可以控制编辑器在并排打开时出现的默认位置（默认值为right，你也可以根据需要改为 down）。如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201019.png&#34; alt=&#34;20211012_1455&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;3、从终端-code-命令启动-VS-Code（Mac电脑）&#34;&gt;3、从终端 code 命令启动 VS Code（Mac电脑）&lt;/h3&gt;
&lt;p&gt;在终端输入&lt;code&gt;code&lt;/code&gt;或者输入 &lt;code&gt;code + 指定项目的目录&lt;/code&gt;，就可以启动 VS  Code，十分便捷。即：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt; 命令：启动 VS Code 软件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;code pathName/fileName&lt;/code&gt; 命令：通过 VS Code 软件打开指定目录/指定文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;为了达到目的，我们需要先将 VS Code的软件安装路径添加到环境变量，一劳永逸。具体操作如下：&lt;/p&gt;
&lt;p&gt;（1）打开 &lt;code&gt;bash_profile&lt;/code&gt;文件：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;cd ~
vim .&amp;#x2F;bash_profile&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;（2）在 bash_profile 中添加如下内容：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;# 从终端启动VS Code，并设置vscode启动的命令别名
alias code&amp;#x3D;&amp;quot;&amp;#x2F;Applications&amp;#x2F;Visual\ Studio\ Code.app&amp;#x2F;Contents&amp;#x2F;Resources&amp;#x2F;app&amp;#x2F;bin&amp;#x2F;code&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;注意，由于&lt;code&gt;Visual Studio Code.app&lt;/code&gt;这个路径里有空格，所以需要在空格前面加上反斜杠&lt;code&gt;\&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（3）重启环境变量的配置：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;# 重启
source ~&amp;#x2F;.bash_profile&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;大功告成。&lt;/p&gt;
&lt;p&gt;改完之后，如果没生效，那你把  &lt;code&gt;bash_profile&lt;/code&gt;文件 换成 &lt;code&gt;zshrc&lt;/code&gt;文件试试。&lt;/p&gt;
&lt;p&gt;参考链接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.csdn.net/logan_LG/article/details/106800904&#34;&gt;mac通过终端code 命令打开vscode&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;3、从终端-code-命令启动-VS-Code（Windows电脑）&#34;&gt;3、从终端 code 命令启动 VS Code（Windows电脑）&lt;/h3&gt;
&lt;p&gt;在终端输入&lt;code&gt;code&lt;/code&gt;或者输入 &lt;code&gt;code + 指定项目的目录&lt;/code&gt;，就可以启动 VS  Code，十分便捷。即：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;code&lt;/code&gt; 命令：启动 VS Code 软件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;code pathName/fileName&lt;/code&gt; 命令：通过 VS Code 软件打开指定目录/指定文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;为了达到目的，我们需要先将 VS Code的软件安装路径添加到环境变量，一劳永逸。具体操作如下：&lt;/p&gt;
&lt;p&gt;（1）打开 VS Code 的安装位置，进入bin文件夹，复制路径。比如：&lt;code&gt;D:\Microsoft VS Code\bin&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）回到桌面，右键我的电脑–&amp;gt;高级系统设置–&amp;gt;环境变量–&amp;gt;编辑path值，在原来的path后面，追加内容&lt;code&gt;;D:\Microsoft VS Code\bin&lt;/code&gt;（即英文的分号+VS  Code 的 bin 路径)&lt;/p&gt;
&lt;p&gt;（3）重启电脑，大功告成。&lt;/p&gt;
&lt;p&gt;改完之后，如果没生效，那八成是因为你填的 path 值有问题。&lt;/p&gt;
&lt;p&gt;参考链接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.cnblogs.com/zyl-Tara/p/10642704.html&#34;&gt;windows使用 code . 命令打开vscode&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;4、在当前文件中搜索&#34;&gt;4、在当前文件中搜索&lt;/h3&gt;
&lt;p&gt;在上面的快捷键列表中，我们已经知道如下快捷键：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Cmd + F（Win 用户是 Ctrl + F）：在当前文件中搜索，光标在搜索框里&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Cmd + G（Win 用户是 F3）：在当前文件中搜索，光标仍停留在编辑器里&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;多个搜索结果出来之后，按下 Enter 键之后跳转到下一个搜索结果，按下 Shift + Enter 键之后跳转到上一个搜索结果。&lt;/p&gt;
&lt;p&gt;另外，你可能会注意到，搜索框里有很多按钮，每个按钮都对应着不同的功能，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201012.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，你可以通过「Tab」键和「Shift + Tab」键在输入框和替换框之间进行切换。&lt;/p&gt;
&lt;p&gt;「在选定内容中查找」这个功能还是比较实用的。你也可以在设置项里搜索 &lt;code&gt;editor.find.autoFindInSelection&lt;/code&gt;，勾选该设置项后，那么，当你选中指定内容后，然后按住「Cmd + F」，就可以&lt;strong&gt;自动&lt;/strong&gt;只在这些内容里进行查找。该设置项如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201608.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;5、全局搜索&#34;&gt;5、全局搜索&lt;/h3&gt;
&lt;p&gt;在上面的快捷键列表中，我们已经知道如下快捷键：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cmd + Shift + F（Win 用户是 Ctrl + Shift +F）：在全局的文件夹中进行搜索。效果如下：&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201013.png&#34; alt=&#34;20211012_1548&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，你可以点击&lt;strong&gt;红框&lt;/strong&gt;部分，展开更多的配置项。然后点击&lt;strong&gt;红圈&lt;/strong&gt;部分，进行过滤搜索。注意，第二个红圈那里会经常用到，它可以在搜索时过滤掉  &lt;code&gt;.git&lt;/code&gt;、&lt;code&gt;.node_modules&lt;/code&gt;等忽略文件。&lt;/p&gt;
&lt;p&gt;上图中，我们还可以点击“在编辑器中打开”，在一个单独的文件中聚合展示搜索结果：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201615.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;6、文件名-文件夹的搜索&#34;&gt;6、文件名/文件夹的搜索&lt;/h3&gt;
&lt;p&gt;前面的快捷键那一段我们讲过，通过 「Cmd + P」可以快速搜索并打开&lt;strong&gt;文件&lt;/strong&gt;/文件夹。这种方式，一般用于快速打开最近编辑过的文件。&lt;/p&gt;
&lt;p&gt;其实还有一种很巧妙的方式，可以在整个项目里，既能搜到文件，也能搜到&lt;strong&gt;文件夹&lt;/strong&gt;。这种方式，常用于&lt;strong&gt;过滤项目的目录&lt;/strong&gt;。操作方法很简单：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;直接在文件资源管理器输入关键字就行。搜索结果会自动出现；使用方向键进行上下移动，可以在搜索的文件和文件夹之间进行跳转。&lt;/p&gt;
&lt;p&gt;另外，右上角会看到一个过滤器，点击下图中的红圈部分，则只显示匹配的文件和文件夹。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201006.png&#34; alt=&#34;20211012_1616&#34;&gt;&lt;/p&gt;
&lt;p&gt;当然，这招也有一点不足：不能搜中文。&lt;/p&gt;
&lt;h3 id=&#34;7、大纲视图&#34;&gt;7、大纲视图&lt;/h3&gt;
&lt;p&gt;如下图所示，大纲视图可以展示当前代码的方法结构、文件的目录结构：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201621.png&#34; alt=&#34;20211012_1628&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201929.png&#34; alt=&#34;20211012_1636&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;8、文件对比&#34;&gt;8、文件对比&lt;/h3&gt;
&lt;p&gt;VS Code 默认支持&lt;strong&gt;对比两个文件的内容&lt;/strong&gt;。选中两个文件，然后右键选择「将已选项进行比较」即可，效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200959.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;VS Code 自带的对比功能并不够强大，我们可以安装插件&lt;code&gt;compareit&lt;/code&gt;，进行更丰富的对比。比如说，安装完插件&lt;code&gt;compareit&lt;/code&gt;之后，我们可以将「当前文件」与「剪切板」里的内容进行对比：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201628.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果你安装了 GitLens 插件，还可以将两个git分支的代码进行比对，非常完美。&lt;/p&gt;
&lt;h3 id=&#34;9、查找某个函数在哪些地方被调用了&#34;&gt;9、查找某个函数在哪些地方被调用了&lt;/h3&gt;
&lt;p&gt;比如我已经在&lt;code&gt;a.js&lt;/code&gt;文件里调用了 &lt;code&gt;foo()&lt;/code&gt;函数。那么，如果我想知道&lt;code&gt;foo()&lt;/code&gt;函数在其他文件中是否也被调用了，该怎么做呢？&lt;/p&gt;
&lt;p&gt;做法如下：在 &lt;code&gt;a.js&lt;/code&gt; 文件里，选中&lt;code&gt;foo()&lt;/code&gt;函数（或者将光标放置在&lt;code&gt;foo()&lt;/code&gt;函数上），然后按住快捷键「Shift + F12」，就能看到 &lt;code&gt;foo()&lt;/code&gt;函数在哪些地方被调用了，比较实用。&lt;/p&gt;
&lt;h3 id=&#34;10、鼠标操作&#34;&gt;10、鼠标操作&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;在当前行的位置，鼠标三击，可以选中当前行。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;用鼠标单击文件的&lt;strong&gt;行号&lt;/strong&gt;，可以选中当前行。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;在某个&lt;strong&gt;行号&lt;/strong&gt;的位置，&lt;strong&gt;上下移动鼠标，可以选中多行&lt;/strong&gt;。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;11、重构&#34;&gt;11、重构&lt;/h3&gt;
&lt;p&gt;重构分很多种，我们来举几个例子。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;命名重构&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;当我们尝试去修改某个函数（或者变量名）时，我们可以把光标放在上面，然后按下「F2」键，那么，这个函数（或者变量名）出现的地方都会被修改。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;方法重构&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;选中某一段代码，这个时候，代码的左侧会出现一个「灯泡图标」，点击这个图标，就可以把这段代码提取为一个单独的函数。&lt;/p&gt;
&lt;h3 id=&#34;12：终端配置&#34;&gt;12：终端配置&lt;/h3&gt;
&lt;p&gt;VS Code软件自带了终端，但我个人认为不是很好用，而且VS Code 软件关了之后，终端也没了。建议大家使用其他的终端软件，专业的事情交给专业的人做。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows平台的终端：推荐 PowerShell 软件。远程终端推荐 xshell 软件。&lt;/li&gt;
&lt;li&gt;Mac平台的终端：推荐 &lt;a href=&#34;https://iterm2.com/&#34;&gt;iTerm2 &lt;/a&gt;。 iTerm2 是Mac平台最好用的终端软件，没有之一。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;右键行为&lt;/strong&gt;：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;在终端上，单击右键所产生的行为在不同的系统里是不同的。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Windows：如果有&lt;strong&gt;选定&lt;/strong&gt;文本，则复制当前文本；如果没有选定文本，则粘贴。&lt;/li&gt;
&lt;li&gt;macOS：选中光标所在位置的单词，并显示右键菜单。&lt;/li&gt;
&lt;li&gt;Linux：显示右键菜单。&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;13、Git-版本管理&#34;&gt;13、Git 版本管理&lt;/h3&gt;
&lt;p&gt;在 VS Code中使用Git之前，需要你先安装 Git 环境。&lt;/p&gt;
&lt;p&gt;VS Code 自带了 Git 版本管理的功能，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200958.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，我们可以在这里进行常见的 git 命令操作。如果你还不熟悉 &lt;strong&gt;Git 版本管理&lt;/strong&gt;，可以先去补补课。&lt;/p&gt;
&lt;p&gt;我自己用的最多的功能是&lt;strong&gt;diff 代码&lt;/strong&gt;和&lt;strong&gt;合并冲突&lt;/strong&gt;，自从用上了  VS Code 的这两个功能，简直离不开它。&lt;/p&gt;
&lt;p&gt;我们先来看看 diff 代码的效果：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201634.png&#34; alt=&#34;20211013_1411&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，点击右上角的&lt;code&gt;...&lt;/code&gt;，然后点击&lt;code&gt;内联视图&lt;/code&gt;，则可以换一种视图 diff 代码：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201937.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Git状态栏&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200952.png&#34; alt=&#34;20211013_1421&#34;&gt;&lt;/p&gt;
&lt;p&gt;在VS Code的左下角会显示Git状态栏。如果当前代码仓库配置了远程仓库，那么“同步更改”会显示以下信息：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;左边的数字：表示远程分支比本地分支多了XX个 Git commit。&lt;/li&gt;
&lt;li&gt;右边的数字：表示本地分支比远程分支多了XX个 Git commit。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;点击“同步更改”按钮，会拉取（pull）远程分支到本地分支，并推送（push）本地的Git commit到远程分支。&lt;/p&gt;
&lt;p&gt;如果当前代码仓库没有配置远程仓库，则会显示“发布更改”的按钮。点击“发布更改”按钮，会把当前分支push到远程仓库。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;另外，我建议安装插件&lt;code&gt;GitLens&lt;/code&gt;搭配使用，它是 VS Code 中我最推荐的一个插件，简直是 Git 神器，码农必备。&lt;/p&gt;
&lt;p&gt;我还要补充一句：&lt;/p&gt;
&lt;p&gt;有人说，高手都是直接用命令行操作Git。然而，根据我多年的经验来看，如果你的代码仓库需要管理的分支特别多，与团队的其他成员需要经常协作，那么，我建议你&lt;strong&gt;优先使用&lt;/strong&gt; GUI 图形化工具来操作Git，避免出错。&lt;/p&gt;
&lt;p&gt;我推荐的GUI版的Git工具有：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.git-tower.com/&#34;&gt;Tower&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.sourcetreeapp.com/&#34;&gt;Sourcetree&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.gitkraken.com/&#34;&gt;GitKraken&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;14、将工作区放大-缩小&#34;&gt;14、将工作区放大/缩小&lt;/h3&gt;
&lt;p&gt;我们在上面的设置项里修改字体大小后，仅仅只是修改了代码的字体大小。&lt;/p&gt;
&lt;p&gt;如果你想要缩放整个工作区（包括代码的字体、左侧导航栏的字体等），可以按下快捷键「&lt;strong&gt;cmd +/-&lt;/strong&gt;」。windows 用户是按下「ctrl +/-」&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;当我们在投影仪上给别人演示代码的时候，这一招十分管用&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;如果你想恢复默认的工作区大小，可以在命令面板输入&lt;code&gt;重置缩放&lt;/code&gt;（英文是&lt;code&gt;reset zoom&lt;/code&gt;）&lt;/p&gt;
&lt;p&gt;f### 11、创建多层子文件夹&lt;/p&gt;
&lt;p&gt;我们可以在新建文件夹的时候，如果直接输入&lt;code&gt;aa/bb/cc&lt;/code&gt;，比如：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201641.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;那么，就可以创建多层子文件夹，效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200945.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;15、-vscode-文件夹的作用&#34;&gt;15、&lt;code&gt;.vscode&lt;/code&gt; 文件夹的作用&lt;/h3&gt;
&lt;p&gt;为了统一团队的 vscode 配置，我们可以在项目的根目录下建立&lt;code&gt;.vscode&lt;/code&gt;目录，在里面放置一些配置内容，比如：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;settings.json&lt;/code&gt;：工作空间设置、代码格式化配置、插件配置。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;sftp.json&lt;/code&gt;：ftp 文件传输的配置。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;.vscode&lt;/code&gt;目录里的配置只针对当前项目范围内生效。将&lt;code&gt;.vscode&lt;/code&gt;提交到代码仓库，大家统一配置时，会非常方便。&lt;/p&gt;
&lt;h3 id=&#34;16、自带终端&#34;&gt;16、自带终端&lt;/h3&gt;
&lt;p&gt;我们可以按下「Ctrl + `」打开 VS Code 自带的终端。我认为内置终端并没有那么好用，我更建议你使用第三方的终端 &lt;strong&gt;item2&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;17、markdown-语法支持&#34;&gt;17、markdown 语法支持&lt;/h3&gt;
&lt;p&gt;VS Code 自带 markdown 语法高亮。也就是说，如果你是用 markdown 格式写文章，则完全可以用 VS Code 进行写作。&lt;/p&gt;
&lt;p&gt;写完 md 文件之后，你可以点击右上角的按钮进行预览，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201648.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;我一般是安装「Markdown Preview Github Styling」插件，以 GitHub 风格预览 Markdown 样式。样式十分简洁美观。&lt;/p&gt;
&lt;p&gt;你也可以在控制面板输入&lt;code&gt;Markdown: 打开预览&lt;/code&gt;，直接全屏预览 markdown 文件。&lt;/p&gt;
&lt;h3 id=&#34;18、Emmet-in-VS-Code&#34;&gt;18、Emmet in VS Code&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;Emmet&lt;/code&gt;可以极大的提高 html 和 css 的编写效率，它提供了一种非常简练的语法规则。&lt;/p&gt;
&lt;p&gt;举个例子，我们在编辑器中输入缩写代码：&lt;code&gt;ul&amp;gt;li*6&lt;/code&gt; ，然后按下 Tab 键，即可得到如下代码片段：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-markup&#34; data-language=&#34;markup&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-markup&#34;&gt;&amp;lt;ul&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
  &amp;lt;li&amp;gt;&amp;lt;&amp;#x2F;li&amp;gt;
&amp;lt;&amp;#x2F;ul&amp;gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;VS Code 默认支持 Emmet。更多 Emmet 语法规则，可以自行查阅。&lt;/p&gt;
&lt;h3 id=&#34;19、修改字体，使用「Fira-Code」字体&#34;&gt;19、修改字体，使用「Fira Code」字体&lt;/h3&gt;
&lt;p&gt;这款字体很漂亮，很适合用来写代码：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201655.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;安装步骤如下：&lt;/p&gt;
&lt;p&gt;（1）进入 &lt;a href=&#34;https://github.com/tonsky/FiraCode&#34;&gt;https://github.com/tonsky/FiraCode&lt;/a&gt; 网站，下载并安装「Fira Code」字体。&lt;/p&gt;
&lt;p&gt;（2）打开 VS Code 的「设置」，搜索&lt;code&gt;font&lt;/code&gt;，修改相关配置为如下内容：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-json&#34; data-language=&#34;json&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;&amp;quot;editor.fontFamily&amp;quot;: &amp;quot;&amp;#39;Fira Code&amp;#39;,Menlo, Monaco, &amp;#39;Courier New&amp;#39;, monospace&amp;quot;, &amp;#x2F;&amp;#x2F; 设置字体显示
&amp;quot;editor.fontLigatures&amp;quot;: false,&amp;#x2F;&amp;#x2F;控制是否启用字体连字，true启用，false不启用&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;上方的第二行配置，取决于个人习惯，我是直接设置为&lt;code&gt;&amp;quot;editor.fontLigatures&amp;quot;: null&lt;/code&gt;，因为我不太习惯连字。&lt;/p&gt;
&lt;h3 id=&#34;20、代码格式化&#34;&gt;20、代码格式化&lt;/h3&gt;
&lt;p&gt;VS Code 默认对 JavaScript、TypeScript、JSON、HTML 提供了开箱即用的代码格式化支持。其他语言则需要先安装相应的插件才能支持。&lt;/p&gt;
&lt;p&gt;另外，我们还可以安装 Prettier 插件进行&lt;strong&gt;更精细&lt;/strong&gt;的代码格式化。下一段将插件的时候，会讲解。&lt;/p&gt;
&lt;h3 id=&#34;21、智能提示-IntelliSense&#34;&gt;21、智能提示 IntelliSense&lt;/h3&gt;
&lt;p&gt;VS Code 默认对 JavaScript、TypeScript、JSON、HTML、CSS、SCSS、Less这7种语言（文件）提供了&lt;strong&gt;智能提示&lt;/strong&gt;的支持。其他编程语言则需要先安装相应的插件才能支持。&lt;/p&gt;
&lt;p&gt;在 VS Code插件职场中，下图是最受欢迎的8种&lt;a href=&#34;https://marketplace.visualstudio.com/search?target=VSCode&amp;amp;category=Programming%20Languages&amp;amp;sortBy=Installs&#34;&gt;编程语言插件&lt;/a&gt;：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201656.png&#34; alt=&#34;20211013_1120&#34;&gt;&lt;/p&gt;
&lt;p&gt;智能提示的功能很强大， 包括函数介绍、代码自动补全等等。&lt;/p&gt;
&lt;h3 id=&#34;22、调试与运行&#34;&gt;22、调试与运行&lt;/h3&gt;
&lt;p&gt;VS Code &lt;strong&gt;内置&lt;/strong&gt;了对 Node.js 运行时的调试支持，可以直接调试  JavaScript 和 TypeScript。其他编程语言的调试，则需要先安装相应的插件才能支持。&lt;/p&gt;
&lt;p&gt;在 VS Code插件市场中，下图是最受欢迎的几种调试插件：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200938.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;23、文件传输：sftp&#34;&gt;23、文件传输：sftp&lt;/h3&gt;
&lt;p&gt;如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器（需要先把服务端的配置搭建好），可以安装&lt;code&gt;sftp&lt;/code&gt;这个插件，很好用。在公司会经常用到。&lt;/p&gt;
&lt;p&gt;步骤如下：&lt;/p&gt;
&lt;p&gt;（1）安装插件&lt;code&gt;sftp&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）配置 &lt;code&gt;sftp.json&lt;/code&gt;文件。 插件安装完成后，输入快捷键「cmd+shift+P」弹出命令面板，然后输入&lt;code&gt;sftp:config&lt;/code&gt;，回车，当前工程的&lt;code&gt;.vscode&lt;/code&gt;文件夹下就会自动生成一个&lt;code&gt;sftp.json&lt;/code&gt;文件，我们需要在这个文件里配置的内容可以是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;host&lt;/code&gt;：服务器的 IP 地址&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;username&lt;/code&gt;：用户名&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;privateKeyPath&lt;/code&gt;：存放在本地的已配置好的用于登录工作站的密钥文件（也可以是 ppk 文件）&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;remotePath&lt;/code&gt;：工作站上与本地工程同步的文件夹路径，需要和本地工程文件根目录同名，且在使用 sftp 上传文件之前，要手动在工作站上 mkdir 生成这个根目录&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;ignore&lt;/code&gt;：指定在使用 sftp: sync to remote 的时候忽略的文件及文件夹，注意每一行后面有逗号，最后一行没有逗号&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;举例如下：(注意，其中的注释需要去掉)&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-json&#34; data-language=&#34;json&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;&amp;#123;
  &amp;quot;host&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;, &amp;#x2F;&amp;#x2F;服务器ip
  &amp;quot;port&amp;quot;: 22, &amp;#x2F;&amp;#x2F;端口，sftp模式是22
  &amp;quot;username&amp;quot;: &amp;quot;&amp;quot;, &amp;#x2F;&amp;#x2F;用户名
  &amp;quot;password&amp;quot;: &amp;quot;&amp;quot;, &amp;#x2F;&amp;#x2F;密码
  &amp;quot;protocol&amp;quot;: &amp;quot;sftp&amp;quot;, &amp;#x2F;&amp;#x2F;模式
  &amp;quot;agent&amp;quot;: null,
  &amp;quot;privateKeyPath&amp;quot;: null,
  &amp;quot;passphrase&amp;quot;: null,
  &amp;quot;passive&amp;quot;: false,
  &amp;quot;interactiveAuth&amp;quot;: false,
  &amp;quot;remotePath&amp;quot;: &amp;quot;&amp;#x2F;root&amp;#x2F;node&amp;#x2F;build&amp;#x2F;&amp;quot;, &amp;#x2F;&amp;#x2F;服务器上的文件地址
  &amp;quot;context&amp;quot;: &amp;quot;.&amp;#x2F;server&amp;#x2F;build&amp;quot;, &amp;#x2F;&amp;#x2F;本地的文件地址

  &amp;quot;uploadOnSave&amp;quot;: true, &amp;#x2F;&amp;#x2F;监听保存并上传
  &amp;quot;syncMode&amp;quot;: &amp;quot;update&amp;quot;,
  &amp;quot;watcher&amp;quot;: &amp;#123;
    &amp;#x2F;&amp;#x2F;监听外部文件
    &amp;quot;files&amp;quot;: false, &amp;#x2F;&amp;#x2F;外部文件的绝对路径
    &amp;quot;autoUpload&amp;quot;: false,
    &amp;quot;autoDelete&amp;quot;: false
  &amp;#125;,
  &amp;quot;ignore&amp;quot;: [
    &amp;#x2F;&amp;#x2F;忽略项
    &amp;quot;**&amp;#x2F;.vscode&amp;#x2F;**&amp;quot;,
    &amp;quot;**&amp;#x2F;.git&amp;#x2F;**&amp;quot;,
    &amp;quot;**&amp;#x2F;.DS_Store&amp;quot;
  ]
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;（3）在 VS Code 的当前文件里，选择「右键 -&amp;gt; upload」，就可以将本地的代码上传到 指定的 ftp 服务器上（也就是在上方 &lt;code&gt;host&lt;/code&gt; 中配置的服务器 ip）。&lt;/p&gt;
&lt;p&gt;我们还可以选择「右键 -&amp;gt; Diff with Remote」，就可以将本地的代码和 ftp 服务器上的代码做对比，非常方便。&lt;/p&gt;
&lt;h3 id=&#34;24、沉浸模式-禅模式&#34;&gt;24、沉浸模式/禅模式&lt;/h3&gt;
&lt;p&gt;程序员写代码需要专注，有时需要进入一种心流。VS Code给我们提供了一种全屏下的沉浸模式，周围的面板都会被隐藏起来，只显示编辑器部分。&lt;/p&gt;
&lt;p&gt;操作方法：菜单栏选择「查看-外观-禅模式」即可；或者按下快捷键&lt;code&gt;Cmd + K&lt;/code&gt;，放手，再按&lt;code&gt;Z&lt;/code&gt;也可以达到目的。&lt;/p&gt;
&lt;h3 id=&#34;正则表达式批量删除字符串&#34;&gt;正则表达式批量删除字符串&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;需求&lt;/strong&gt;：将文本中的字符串&lt;code&gt;axxxxb&lt;/code&gt;，批量替换为&lt;code&gt;ab&lt;/code&gt;。其中，开头字符 a 和 结尾字符 b 固定，中间xxx长度不确定。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解决&lt;/strong&gt;：传统查找替换无法胜任。可以使用VScode正则表达式功能，查找&lt;code&gt;a.*?b&lt;/code&gt;替换为&lt;code&gt;ab&lt;/code&gt;即可。其中&lt;code&gt;?&lt;/code&gt;是禁止贪婪匹配，否则会误删很多内容。&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;拓展需求&lt;/strong&gt;：需求——将文本中的字符串&lt;code&gt;axxxx&lt;/code&gt;，批量替换为&lt;code&gt;a&lt;/code&gt;。其中，开头字符 a 固定，后面的xxx长度不确定。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解决&lt;/strong&gt;：传统查找替换无法胜任。可以使用VScode正则表达式功能，查找&lt;code&gt;a.*?\n&lt;/code&gt;替换为&lt;code&gt;a\n&lt;/code&gt;即可。&lt;/p&gt;
&lt;h2 id=&#34;六、三头六臂：VS-Code-插件介绍-插件推荐&#34;&gt;六、三头六臂：VS Code 插件介绍 &amp;amp; 插件推荐&lt;/h2&gt;
&lt;p&gt;VS Code 有一个很强大的功能就是支持插件扩展，让你的编辑器仿佛拥有了三头六臂。&lt;/p&gt;
&lt;h3 id=&#34;安装插件&#34;&gt;安装插件&lt;/h3&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201702.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，点击红框部分，即可在顶部输入框里，查找你想要的插件名，然后进行安装。&lt;/p&gt;
&lt;p&gt;插件安装完成后，记得重启软件（或者点击插件位置的“重新加载”），插件才会生效。&lt;/p&gt;
&lt;p&gt;另外，我们还可以访问官网的插件市场来安装插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;VS Code插件市场（官方）：&lt;a href=&#34;https://marketplace.visualstudio.com/vscode&#34;&gt;https://marketplace.visualstudio.com/vscode&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;插件的安装目录&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Windows：：&lt;code&gt;%USERPROFILE%\.vscode\extensions&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;macOS：&lt;code&gt;~/.vscode/extensions&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;macOS：&lt;code&gt;~/.vscode/extensions&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;插件的类型&#34;&gt;插件的类型&lt;/h3&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201709.png&#34; alt=&#34;20211013_1757_2&#34;&gt;&lt;/p&gt;
&lt;p&gt;插件市场的首页有四个模块，可以作为重要的信息来源：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Featured：由  VS Code团队精心推荐的插件。&lt;/li&gt;
&lt;li&gt;Trending：近期热门插件。&lt;/li&gt;
&lt;li&gt;Most Popular：按总安装量排序的插件。&lt;/li&gt;
&lt;li&gt;Recently Added：最新发布的插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200932.png&#34; alt=&#34;20211013_1758&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200925.png&#34; alt=&#34;20211013_1955&#34;&gt;&lt;/p&gt;
&lt;p&gt;插件市场至少有17种类型的插件：（按照数量排序）&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Themes：主题插件&lt;/li&gt;
&lt;li&gt;Programming Languages：编程语言插件&lt;/li&gt;
&lt;li&gt;Snippets：代码片段&lt;/li&gt;
&lt;li&gt;Extension Packs：插件包，里面包括多个插件&lt;/li&gt;
&lt;li&gt;Formatters：代码格式化&lt;/li&gt;
&lt;li&gt;Linters：静态检查&lt;/li&gt;
&lt;li&gt;Debuggers：调试器&lt;/li&gt;
&lt;li&gt;Keymaps：快捷键映射&lt;/li&gt;
&lt;li&gt;Visualization：可视化&lt;/li&gt;
&lt;li&gt;Language Packs：各国的语言插件&lt;/li&gt;
&lt;li&gt;Azure：Azure 云计算&lt;/li&gt;
&lt;li&gt;Data Science：数据科学&lt;/li&gt;
&lt;li&gt;SCM Providers：源代码控制管理器（source control manager）&lt;/li&gt;
&lt;li&gt;Notebooks&lt;/li&gt;
&lt;li&gt;Education：教育&lt;/li&gt;
&lt;li&gt;Testing：测试相关&lt;/li&gt;
&lt;li&gt;Machine Learning：机器学习&lt;/li&gt;
&lt;li&gt;Others：其他&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;插件的过滤显示&#34;&gt;插件的过滤显示&lt;/h3&gt;
&lt;p&gt;在 VS  Code中打开插件管理视图，可以针对已安装的插件，进行过滤展示。&lt;/p&gt;
&lt;p&gt;1）点击插件视图右上角的&lt;code&gt;...&lt;/code&gt;按钮，可以展示不同状态的插件：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201958.png&#34; alt=&#34;20211013_2011&#34;&gt;&lt;/p&gt;
&lt;p&gt;2）在搜索框输入字符&lt;code&gt;@&lt;/code&gt;，会展示出不同类型的过滤器：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201716.png&#34; alt=&#34;20211013_2015&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;常见的过滤器如下&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;1）按大类搜：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;@builtin&lt;/code&gt;：显示 VS Code内置的插件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@disabled&lt;/code&gt;：显示被禁用的插件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@enabled&lt;/code&gt;：显示已启用的插件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@installed&lt;/code&gt;：显示已安装的插件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@outdated&lt;/code&gt;：显示待更新的插件&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2）精准搜索：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;@id&lt;/code&gt;：按id显示插件&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@tag&lt;/code&gt;：根据标签显示插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;3）对插件进行排序：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;@sort:installs&lt;/code&gt;：根据插件的安装量排序&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@sourt:rating&lt;/code&gt;：根据插件的评分排序&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@sort:name&lt;/code&gt;：根据插件名字的字母顺序排序&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;4）组合搜索：（举例）&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;@installed @category:themes&lt;/code&gt;：显示已安装的主题插件。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;@sort:installs java&lt;/code&gt;：对 Java 相关的插件按照安装量排序。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;下面的内容，我来列举一些常见的插件，这些插件都很实用，小伙伴们可以按需安装。注意：每一类插件里，&lt;strong&gt;顺序越靠前，越实用&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;1、基本插件&#34;&gt;1、基本插件&lt;/h3&gt;
&lt;h4 id=&#34;Chinese-Simplified-Language-Pack-for-Visual-Studio-Code&#34;&gt;Chinese (Simplified) Language Pack for Visual Studio Code&lt;/h4&gt;
&lt;p&gt;让软件显示为简体中文语言。&lt;/p&gt;
&lt;h3 id=&#34;2、Git-相关插件&#34;&gt;2、Git 相关插件&lt;/h3&gt;
&lt;h4 id=&#34;GitLens-【荐】&#34;&gt;GitLens 【荐】&lt;/h4&gt;
&lt;p&gt;我强烈建议你安装插件&lt;code&gt;GitLens&lt;/code&gt;，它是 VS Code 中我最推荐的一个插件，简直是 Git 神器，码农必备。如果你不知道，那真是 out 了。&lt;/p&gt;
&lt;p&gt;GitLens 在 Git 管理上有很多强大的功能，比如：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;将光标放置在代码的当前行，可以看到这样代码的提交者是谁，以及提交时间。这一点，是 GitLens 最便捷的功能。&lt;/li&gt;
&lt;li&gt;查看某个 commit 的代码改动记录&lt;/li&gt;
&lt;li&gt;查看不同的分支&lt;/li&gt;
&lt;li&gt;可以将两个 commit 进行代码对比&lt;/li&gt;
&lt;li&gt;甚至可以将两个 branch 分支进行整体的代码对比。这一点，简直是 GitLens 最强大的功能。当我们在不同分支 review 代码的时候，就可以用到这一招。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;打开你的 Git仓库，未安装  GitLens 时是这样的：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200918.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;安装了  GitLens 之后是这样的：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201723.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，红框部分就是  GitLens 的功能，诸君可以自由发挥。&lt;/p&gt;
&lt;p&gt;补充一个有意思的趣事：Python插件、Ruby插件、GitLens插件、Vetur插件，这四个插件的开发者先后加入了微软。&lt;/p&gt;
&lt;h4 id=&#34;Git-History&#34;&gt;Git History&lt;/h4&gt;
&lt;p&gt;有些同学习惯使用编辑器中的 Git 管理工具，而不太喜欢要打开另外一个 Git UI 工具的同学，这一款插件满足你查询所有 Git 记录的需求。&lt;/p&gt;
&lt;h4 id=&#34;Local-History-【荐】&#34;&gt;Local History 【荐】&lt;/h4&gt;
&lt;p&gt;维护文件的本地历史记录。代码意外丢失时，有时可以救命。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201729.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h3 id=&#34;3、代码智能提示插件&#34;&gt;3、代码智能提示插件&lt;/h3&gt;
&lt;h4 id=&#34;Vetur&#34;&gt;Vetur&lt;/h4&gt;
&lt;p&gt;Vue 多功能集成插件，包括：语法高亮，智能提示，emmet，错误提示，格式化，自动补全，debugger。VS Code 官方钦定 Vue 插件，Vue 开发者必备。&lt;/p&gt;
&lt;h4 id=&#34;ES7-React-Redux-GraphQL-React-Native-snippets&#34;&gt;ES7 React/Redux/GraphQL/React-Native snippets&lt;/h4&gt;
&lt;p&gt;React/Redux/react-router 的语法智能提示。&lt;/p&gt;
&lt;h4 id=&#34;JavaScript-ES6-code-snippets&#34;&gt;JavaScript(ES6) code snippets&lt;/h4&gt;
&lt;p&gt;ES6 语法智能提示，支持快速输入。&lt;/p&gt;
&lt;h4 id=&#34;javascript-console-utils：快速打印-log-日志【荐】&#34;&gt;javascript console utils：快速打印 log 日志【荐】&lt;/h4&gt;
&lt;p&gt;安装这个插件后，当我们按住快捷键「Cmd + Shift + L」后，即可自动出现日志 &lt;code&gt;console.log()&lt;/code&gt;。简直是日志党福音。&lt;/p&gt;
&lt;p&gt;当我们选中某个变量 &lt;code&gt;name&lt;/code&gt;，然后按住快捷键「Cmd + Shift + L」，即可自动出现这个变量的日志 &lt;code&gt;console.log(name)&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;其他的同类插件还有：Turbo Console Log。&lt;/p&gt;
&lt;p&gt;不过，生产环境的代码，还是尽量少打日志比较好，避免出现一些异常。&lt;/p&gt;
&lt;p&gt;编程有三等境界：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;第三等境界是打日志，这是最简单、便捷的方式，略显低级，一般新手或资深程序员偷懒时会用。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;第二等境界是断点调试，在前端、Java、PHP、iOS 开发时非常常用，通过断点调试可以很直观地跟踪代码执行逻辑、调用栈、变量等，是非常实用的技巧。&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;第一等境界是测试驱动开发，在写代码之前先写测试。与第二等的断点调试刚好相反，大部分人不是很习惯这种方式，但在国外开发者或者敏捷爱好者看来，这是最高效的开发方式，在保证代码质量、重构等方面非常有帮助，是现代编程开发必不可少的一部分。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;Code-Spell-Checker：单词拼写错误检查&#34;&gt;Code Spell Checker：单词拼写错误检查&lt;/h4&gt;
&lt;p&gt;这个拼写检查程序的目标是帮助捕获常见的单词拼写错误，可以检测驼峰命名。从此告别 Chinglish.&lt;/p&gt;
&lt;h4 id=&#34;Auto-Close-Tag、Auto-Rename-Tag&#34;&gt;Auto Close Tag、Auto Rename Tag&lt;/h4&gt;
&lt;p&gt;自动闭合配对的标签、自动重命名配对的标签。&lt;/p&gt;
&lt;h3 id=&#34;4、代码显示增强插件&#34;&gt;4、代码显示增强插件&lt;/h3&gt;
&lt;h4 id=&#34;Bracket-Pair-Colorizer-2：突出显示成对的括号【荐】&#34;&gt;Bracket Pair Colorizer 2：突出显示成对的括号【荐】&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;Bracket Pair Colorizer 2&lt;/code&gt;插件：以不同颜色显示成对的括号，并用连线标注括号范围。简称&lt;strong&gt;彩虹括号&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;另外，还有个&lt;code&gt;Rainbow Brackets&lt;/code&gt;插件，也可以突出显示成对的括号。&lt;/p&gt;
&lt;h4 id=&#34;highlight-icemode：选中相同的代码时，让高亮显示更加明显【荐】&#34;&gt;highlight-icemode：选中相同的代码时，让高亮显示更加明显【荐】&lt;/h4&gt;
&lt;p&gt;VSCode 自带的高亮显示，实在是不够显眼。用插件支持一下吧。&lt;/p&gt;
&lt;p&gt;所用了这个插件之后，VS Code 自带的高亮就可以关掉了：&lt;/p&gt;
&lt;p&gt;在用户设置里添加&lt;code&gt;&amp;quot;editor.selectionHighlight&amp;quot;: false&lt;/code&gt;即可。&lt;/p&gt;
&lt;p&gt;参考链接：&lt;a href=&#34;https://blog.csdn.net/palmer_kai/article/details/79548164&#34;&gt;vscode 选中后相同内容高亮插件推荐&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;vscode-icons&#34;&gt;vscode-icons&lt;/h4&gt;
&lt;p&gt;vscode-icons 会根据文件的后缀名来显示不同的图标，让你更直观地知道每种文件是什么类型的。&lt;/p&gt;
&lt;h4 id=&#34;indent-rainbow：突出显示代码缩进&#34;&gt;indent-rainbow：突出显示代码缩进&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;indent-rainbow&lt;/code&gt;插件：突出显示代码缩进。&lt;/p&gt;
&lt;p&gt;安装完成后，效果如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200911.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;TODO-Highlight&#34;&gt;TODO Highlight&lt;/h4&gt;
&lt;p&gt;写代码过程中，突然发现一个 Bug，但是又不想停下来手中的活，以免打断思路，怎么办？按照代码规范，我们一般是在代码中加个 TODO 注释。比如：（注意，一定要写成大写&lt;code&gt;TODO&lt;/code&gt;，而不是小写的&lt;code&gt;todo&lt;/code&gt;）&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;&amp;#x2F;&amp;#x2F;TODO:这里有个bug，我一会儿再收拾你&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;或者：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-none&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-none&#34;&gt;&amp;#x2F;&amp;#x2F;FIXME:我也不知道为啥， but it works only that way.&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;安装了插件 &lt;code&gt;TODO Highlight&lt;/code&gt;之后，按住「Cmd + Shift + P」打开命令面板，输入「Todohighlist」，选择相关的命令，我们就可以看到一个 todoList 的清单。&lt;/p&gt;
&lt;h4 id=&#34;Better-Comments&#34;&gt;Better Comments&lt;/h4&gt;
&lt;p&gt;为注释添加更醒目、带分类的色彩。&lt;/p&gt;
&lt;h3 id=&#34;5、代码格式化插件&#34;&gt;5、代码格式化插件&lt;/h3&gt;
&lt;h4 id=&#34;Prettier：代码格式化&#34;&gt;Prettier：代码格式化&lt;/h4&gt;
&lt;p&gt;Prettier 是一个代码格式化工具，&lt;strong&gt;只关注格式化，但不具备校验功能&lt;/strong&gt;。在一个多人协同开发的团队中，统一的代码编写规范非常重要。一套规范可以让我们编写的代码达到一致的风格，提高代码的可读性和统一性。自然维护性也会有所提高，代码的展示也会更加美观。&lt;/p&gt;
&lt;p&gt;步骤如下：&lt;/p&gt;
&lt;p&gt;（1）安装插件 &lt;code&gt;Prettier&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）在项目的根路径下，新建文件&lt;code&gt;.prettierrc&lt;/code&gt;，并在文件中添加如下内容：&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-json&#34; data-language=&#34;json&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-json&#34;&gt;&amp;#123;
  &amp;quot;printWidth&amp;quot;: 150,
  &amp;quot;tabWidth&amp;quot;: 4,
  &amp;quot;semi&amp;quot;: true,
  &amp;quot;singleQuote&amp;quot;: true,
  &amp;quot;trailingComma&amp;quot;: &amp;quot;es5&amp;quot;,
  &amp;quot;tslintIntegration&amp;quot;: true,
  &amp;quot;insertSpaceBeforeFunctionParenthesis&amp;quot;: false
&amp;#125;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;上面的内容，是我自己的配置，你可以参考。更多配置，可见官方文档：&lt;a href=&#34;https://prettier.io/docs/en/options.html&#34;&gt;https://prettier.io/docs/en/options.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;（3）Mac用户按快捷键「Option + Shift + F」，Win 用户按快捷键「Alt + shift + F」，即可完成代码的格式化。如果你的VS Code 设置的是自动格式化代码，那么这一步可以忽略。&lt;/p&gt;
&lt;h4 id=&#34;ESLint：代码格式的校验&#34;&gt;ESLint：代码格式的校验&lt;/h4&gt;
&lt;p&gt;日常开发中，建议用 Prettier 做&lt;strong&gt;代码格式化&lt;/strong&gt;，然后用 eslint 做&lt;strong&gt;格式校验&lt;/strong&gt;。很多人把这两个插件的功能弄混了。&lt;/p&gt;
&lt;p&gt;一般做法是：格式化建议是由程序员手动触发，格式校验由系统强制校验。通过 Prettier &lt;strong&gt;手动&lt;/strong&gt;触发格式化，是为了让用户有感知；通过eslint 做&lt;strong&gt;强制&lt;/strong&gt;校验之后，如果代码的格式不符合要求，系统就禁止你提交代码。&lt;/p&gt;
&lt;h4 id=&#34;Beautify&#34;&gt;Beautify&lt;/h4&gt;
&lt;p&gt;代码格式化工具。&lt;/p&gt;
&lt;p&gt;备注：相比之下，Prettier 是当前最流行的代码格式化工具，比 Beautify 用得更多。&lt;/p&gt;
&lt;h4 id=&#34;Paste-JSON-as-Code&#34;&gt;Paste JSON as Code&lt;/h4&gt;
&lt;p&gt;此插件可以将剪贴板中的 JSON 字符串转换成工作代码。支持多种语言。&lt;/p&gt;
&lt;h4 id=&#34;JS-CSS-HTML-Formatter【荐】&#34;&gt;JS-CSS-HTML Formatter【荐】&lt;/h4&gt;
&lt;p&gt;保存文件时，自动格式化 HTML、CSS、JS代码。&lt;/p&gt;
&lt;h3 id=&#34;6、图片相关插件&#34;&gt;6、图片相关插件&lt;/h3&gt;
&lt;h4 id=&#34;Polacode-2020：生成代码截图-【荐】&#34;&gt;Polacode-2020：生成代码截图 【荐】&lt;/h4&gt;
&lt;p&gt;可以把代码片段保存成美观的图片，主题不同，代码的配色方案也不同，也也可以自定义设置图片的边框颜色、大小、阴影。&lt;/p&gt;
&lt;p&gt;尤其是在我们做 PPT 分享时需要用到代码片段时，或者需要在网络上优雅地分享代码片段时，这一招很有用。&lt;/p&gt;
&lt;p&gt;生成的效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200904.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;其他同类插件：&lt;code&gt;CodeSnap&lt;/code&gt;。我们也可以通过 &lt;a href=&#34;https://carbon.now.sh/&#34;&gt;https://carbon.now.sh/&lt;/a&gt;这个网站生成代码图片&lt;/p&gt;
&lt;p&gt;有人可能会说：直接用 QQ 截图不行吗？可以是可以，但不够美观、不够干净。&lt;/p&gt;
&lt;h4 id=&#34;Image-Preview-【荐】&#34;&gt;Image Preview 【荐】&lt;/h4&gt;
&lt;p&gt;图片预览。鼠标移动到图片 url 上的时候，会自动显示图片的预览和图片尺寸。&lt;/p&gt;
&lt;h3 id=&#34;7、CSS相关插件&#34;&gt;7、CSS相关插件&lt;/h3&gt;
&lt;h4 id=&#34;CSS-Peek&#34;&gt;CSS Peek&lt;/h4&gt;
&lt;p&gt;增强 HTML 和 CSS 之间的关联，快速查看该元素上的 CSS 样式。&lt;/p&gt;
&lt;h4 id=&#34;Vue-CSS-Peek&#34;&gt;Vue CSS Peek&lt;/h4&gt;
&lt;p&gt;CSS Peek 对 Vue 没有支持，该插件提供了对 Vue 文件的支持。&lt;/p&gt;
&lt;h4 id=&#34;Color-Info&#34;&gt;Color Info&lt;/h4&gt;
&lt;p&gt;这个便捷的插件，将为你提供你在 CSS 中使用颜色的相关信息。你只需在颜色上悬停光标，就可以预览色块中色彩模型的（HEX、 RGB、HSL 和 CMYK）相关信息了。&lt;/p&gt;
&lt;h3 id=&#34;8、Mardown-相关插件&#34;&gt;8、Mardown 相关插件&lt;/h3&gt;
&lt;h4 id=&#34;Markdown-Preview-Github-Styling-【荐】&#34;&gt;Markdown Preview Github Styling 【荐】&lt;/h4&gt;
&lt;p&gt;以 GitHub 风格预览 Markdown 样式，十分简洁优雅。就像下面这样，左侧书写 Markdown 文本，右侧预览 Markdown 的渲染效果：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201736.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;Markdown-Preview-Enhanced&#34;&gt;Markdown Preview Enhanced&lt;/h4&gt;
&lt;p&gt;预览 Markdown 样式。&lt;/p&gt;
&lt;h4 id=&#34;Markdown-All-in-One&#34;&gt;Markdown All in One&lt;/h4&gt;
&lt;p&gt;这个插件将帮助你更高效地在 Markdown 中编写文档。&lt;/p&gt;
&lt;h3 id=&#34;9、通用工具类插件&#34;&gt;9、通用工具类插件&lt;/h3&gt;
&lt;h4 id=&#34;sftp：文件传输-【荐】&#34;&gt;sftp：文件传输 【荐】&lt;/h4&gt;
&lt;p&gt;如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器，可以安装&lt;code&gt;sftp&lt;/code&gt;这个插件，很好用。在公司会经常用到。&lt;/p&gt;
&lt;p&gt;详细配置已经在上面讲过。&lt;/p&gt;
&lt;h4 id=&#34;Live-Server-【荐】&#34;&gt;Live Server 【荐】&lt;/h4&gt;
&lt;p&gt;在本地启动一个服务器，代码写完后可以实现「热更新」，实时地在网页中看到运行效果。就不需要每次都得手动刷新页面了。&lt;/p&gt;
&lt;p&gt;使用方式：安装插件后，开始写代码；代码写完后，右键选择「Open with Live Server」。&lt;/p&gt;
&lt;h4 id=&#34;open-in-browser&#34;&gt;open in browser&lt;/h4&gt;
&lt;p&gt;安装&lt;code&gt;open in browser&lt;/code&gt;插件后，在 HTML 文件中「右键选择 --&amp;gt; Open in Default Browser」，即可在浏览器中预览网页。&lt;/p&gt;
&lt;h4 id=&#34;Project-Manager&#34;&gt;Project Manager&lt;/h4&gt;
&lt;p&gt;工作中，我们经常会来回切换多个项目，每次都要找到对应项目的目录再打开，比较麻烦。Project Manager 插件可以解决这样的烦恼，它提供了专门的视图来展示你的项目，我们可以把常用的项目保存在这里，需要时一键切换，十分方便。&lt;/p&gt;
&lt;h4 id=&#34;WakaTime-【荐】&#34;&gt;WakaTime 【荐】&lt;/h4&gt;
&lt;p&gt;统计在 VS Code 里写代码的时间。统计效果如下：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200858.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;Code-Time&#34;&gt;Code Time&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;Code Time&lt;/code&gt;插件：记录编程时间，统计代码行数。&lt;/p&gt;
&lt;p&gt;安装该插件后，VS Code 底部的状态栏右下角可以看到时间统计。点击那个位置之后，选择「Code Time Dashboard」，即可查看统计结果。&lt;/p&gt;
&lt;p&gt;备注：团长试了一下这个 code time 插件，发现统计结果不是很准。&lt;/p&gt;
&lt;h4 id=&#34;File-Tree-to-Text-Generator：快速生成文件的目录树&#34;&gt;File Tree to Text Generator：快速生成文件的目录树&lt;/h4&gt;
&lt;p&gt;如题。&lt;/p&gt;
&lt;h4 id=&#34;Settings-Sync&#34;&gt;Settings Sync&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;地址：&lt;a href=&#34;https://github.com/shanalikhan/code-settings-sync&#34;&gt;https://github.com/shanalikhan/code-settings-sync&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;作用：多台设备之间，同步 VS Code 配置。通过登录 GitHub 账号来使用这个同步工具。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;同步的详细操作，下一段会讲。&lt;/p&gt;
&lt;p&gt;另外，北京时间的&lt;a href=&#34;https://zhuanlan.zhihu.com/p/184868336&#34;&gt;2020年8月14日&lt;/a&gt;，微软发布 Visual Studio Code 1.48 稳定版。此版本&lt;strong&gt;原生&lt;/strong&gt;支持用户同步 VS Code的配置，只需要登录微软账号或者 GitHub账号即可。&lt;/p&gt;
&lt;h4 id=&#34;vscode-syncing&#34;&gt;vscode-syncing&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;地址：&lt;a href=&#34;https://github.com/nonoroazoro/vscode-syncing&#34;&gt;https://github.com/nonoroazoro/vscode-syncing&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;作用：多台设备之间，同步 VS Code 配置。&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;minapp：小程序支持&#34;&gt;minapp：小程序支持&lt;/h4&gt;
&lt;p&gt;小程序开发必备插件。&lt;/p&gt;
&lt;h4 id=&#34;Search-node-modules&#34;&gt;Search node_modules&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;node_modules&lt;/code&gt;模块里面的文件夹和模块实在是太多了，根本不好找。好在安装 &lt;code&gt;Search node_modules&lt;/code&gt; 这个插件后，输入快捷键「Cmd + Shift + P」，然后输入 &lt;code&gt;node_modules&lt;/code&gt;，在弹出的选项中选择 &lt;code&gt;Search node_modules&lt;/code&gt;，即可搜索 node_modules 里的模块。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200857.jpeg&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;RemoteHub&#34;&gt;RemoteHub&lt;/h4&gt;
&lt;p&gt;不要惊讶，RemoteHub 和 GitLens 是同一个作者开发出来的。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;RemoteHub&lt;/code&gt;插件的作用是：可以在本地查看 GitHub 网站上的代码，而不需要将代码下载到本地。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200857.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;这个插件目前使用的人还不多，赶紧安装起来尝尝鲜吧。&lt;/p&gt;
&lt;h4 id=&#34;Live-Share：实时编码分享&#34;&gt;Live Share：实时编码分享&lt;/h4&gt;
&lt;p&gt;&lt;code&gt;Live Share&lt;/code&gt;这个神奇的插件是由微软官方出品，它的作用是：&lt;strong&gt;实时编码分享&lt;/strong&gt;。也就是说，它可以实现你和你的同伴一起写代码。这绝对就是&lt;strong&gt;结对编程&lt;/strong&gt;的神器啊。&lt;/p&gt;
&lt;p&gt;安装方式：&lt;/p&gt;
&lt;p&gt;打开插件管理，搜索“live share”，安装。安装后重启 VS Code，在左侧会多出一个按钮：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201743.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，点击红框部分，登录后就可以分享你的工作空间了。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200850.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;Import-Cost&#34;&gt;Import Cost&lt;/h4&gt;
&lt;p&gt;在项目开发过程中，我们会引入很多 npm 包，有时候可能只用到了某个包里的一个方法，却引入了整个包，导致代码体积增大很多。&lt;code&gt;Import Cost&lt;/code&gt;插件可以在代码中友好的提示我们，当前引入的包会增加多少体积，这很有助于帮我们优化代码的体积。&lt;/p&gt;
&lt;h3 id=&#34;10、主题插件&#34;&gt;10、主题插件&lt;/h3&gt;
&lt;p&gt;给你的 VS Code 换个皮肤吧，免费的那种。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Dracula Theme&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Material Theme&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Nebula Theme&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme&#34;&gt;One Dark Pro&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;One Monokai Theme&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Monokai Pro&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Ayu&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://marketplace.visualstudio.com/items?itemName=akarlsten.vscode-snazzy-akarlsten&#34;&gt;Snazzy Plus&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://marketplace.visualstudio.com/items?itemName=alexanderte.dainty-vscode&#34;&gt;Dainty&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;code&gt;SynthWave &#39;84&lt;/code&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;GitHub Plus Theme：白色主题&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Horizon Theme：红色主题&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;七、无缝切换：VS-Code-配置云同步&#34;&gt;七、无缝切换：VS Code 配置云同步&lt;/h2&gt;
&lt;p&gt;我们可以将配置云同步，这样的话，当我们换个电脑时，即可将配置一键同步到本地，就不需要重新安装插件了，也不需要重新配置软件。&lt;/p&gt;
&lt;p&gt;下面讲的两个同步方法，都可以，看你自己需要。方法1是 VS Code自带的同步功能，操作简单。方法2 需要安装插件，支持更多的自定义配置。&lt;/p&gt;
&lt;h3 id=&#34;方法1：使用-VS-Code-自带的同步功能&#34;&gt;方法1：使用 VS Code 自带的同步功能&lt;/h3&gt;
&lt;p&gt;1、&lt;strong&gt;配置同步&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;（1）在菜单栏选择「 Code --&amp;gt; 首选项 --&amp;gt; 打开设置同步」：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201750.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（2）选择需要同步的配置：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200843.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（3）通过Microsoft或者GitHub账号登录。 上图中，点击“登录并打开”，然后弹出如下界面：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201757.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，使用  微软账号或者 GitHub账号登录：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312201803.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（4）同步完成后，菜单栏会显示“首先项同步已打开”，最左侧也会多出一个同步图标，如下图所示：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312202032.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;2、&lt;strong&gt;管理同步&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;（1）点击菜单栏「Code --&amp;gt; 首选项 --&amp;gt; 设置同步已打开」，会弹出如下界面，进行相应的同步管理即可：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200836.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;（2）换另外一个电脑时，登录相同的账号，即可完成同步。&lt;/p&gt;
&lt;p&gt;参考链接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://blog.csdn.net/baidu_33340703/article/details/106967884&#34;&gt;VS Code原生的配置同步功能——Settings Sync&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;方法2：使用插件-settings-sync&#34;&gt;方法2：使用插件 &lt;code&gt;settings-sync&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;使用方法2，我们还可以把配置分享其他用户，也可以把其他用户的配置给自己用。&lt;/p&gt;
&lt;p&gt;1、&lt;strong&gt;配置同步&lt;/strong&gt;：（将自己本地的配置云同步到 GitHub）&lt;/p&gt;
&lt;p&gt;（1）安装插件 &lt;code&gt;settings-sync&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）安装完插件后，在插件里使用 GitHub 账号登录。&lt;/p&gt;
&lt;p&gt;（3）登录后在 vscode 的界面中，可以选择一个别人的 gist；也可以忽略掉，然后创建一个属于自己的 gist。&lt;/p&gt;
&lt;p&gt;（4）使用快捷键 「Command + Shift + P」，在弹出的命令框中输入 sync，并选择「更新/上传配置」，这样就可以把最新的配置上传到 GitHub。&lt;/p&gt;
&lt;p&gt;2、&lt;strong&gt;管理同步&lt;/strong&gt;：（换另外一个电脑时，从云端同步配置到本地）&lt;/p&gt;
&lt;p&gt;（1）当我们换另外一台电脑时，可以先在 VS Code 中安装 &lt;code&gt;settings-sync&lt;/code&gt; 插件。&lt;/p&gt;
&lt;p&gt;（2）安装完插件后，在插件里使用 GitHub 账号登录。&lt;/p&gt;
&lt;p&gt;（3）登录之后，插件的界面上，会自动出现之前的同步记录：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200829.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;上图中，我们点击最新的那条记录，就可将云端的最新配置同步到本地：&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/03/1220220312200825.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;如果你远程的配置没有成功同步到本地，那可能是网络的问题，此时，可以使用快捷键 「Command + Shift + P」，在弹出的命令框中输入 sync，并选择「下载配置」，多试几次。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;使用其他人的配置&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;如果我们想使用别人的配置，首先需要对方提供给你 gist。具体步骤如下：&lt;/p&gt;
&lt;p&gt;（1）安装插件 &lt;code&gt;settings-sync&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;（2）使用快捷键 「Command + Shift + P」，在弹出的命令框中输入 sync，并选择「下载配置」&lt;/p&gt;
&lt;p&gt;（3）在弹出的界面中，选择「Download Public Gist」，然后输入别人分享给你的 gist。注意，这一步不需要登录 GitHub 账号。&lt;/p&gt;
&lt;h2 id=&#34;插件推荐&#34;&gt;插件推荐&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;嵌入式相关插件推荐&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;serial-terminal&#34;&gt;serial terminal&lt;/h3&gt;
&lt;p&gt;这款插件提供了一个简单的串口终端，可以帮助我们轻松地与串口设备进行通信。它支持多种波特率和数据位格式，并且可以轻松地发送和接收数据。&lt;/p&gt;
&lt;h3 id=&#34;GitLens&#34;&gt;GitLens&lt;/h3&gt;
&lt;p&gt;GitLens 是强大的Git集成插件，可以帮助我们实时查看Git提交信息，轻松进行代码溯源。&lt;/p&gt;
&lt;p&gt;安装GitLens 插件之后在每行代码的末尾，GitLens 都会公开最后一次提交的作者、提交的时间以及其他详细的备注信息。&lt;/p&gt;
&lt;p&gt;GitLens提供了可单击的链接，公开了提交详细信息，并允许您从快速选择菜单中进行选择，以比较、导航和进一步探索每个提交。&lt;/p&gt;
&lt;p&gt;我们只需单击一个按钮，就可以在任何文件的历史记录中来回导航。比较随时间推移而发生的变化，并查看整个文件或每行代码的修订历史记录。&lt;/p&gt;
&lt;h3 id=&#34;Code-Runner&#34;&gt;Code Runner&lt;/h3&gt;
&lt;p&gt;Code Runner 插件支持多种语言的代码执行，包括C/C++、Python等。我们平时要写一些C语言小demo验证时可以直接在VSCode中运行我们的代码，无需跳出编辑器就能获取代码执行结果，省去额外安装运行环境的麻烦。&lt;/p&gt;
&lt;h3 id=&#34;Remote-SSH&#34;&gt;Remote - SSH&lt;/h3&gt;
&lt;p&gt;通过这个插件我们可以使用任何带有 SSH 服务器的远程计算机作为开发环境。我们嵌入式开发，有时候需要到服务器上去编译代码，通过这个插件我们可以很方便地修改、编译服务器上的代码。&lt;/p&gt;
&lt;h3 id=&#34;Markdown插件&#34;&gt;Markdown插件&lt;/h3&gt;
&lt;p&gt;Markdown是一种轻量级标记语言，它的特点是简单、易学、易用。我们程序员写文档一般都是基于Markdown来写，我们可以使用一些Markdown文档工具，也可以在vscode里安装Markdown Preview Enhanced等Markdown插件。&lt;/p&gt;
&lt;h3 id=&#34;C-C-插件&#34;&gt;C/C++插件&lt;/h3&gt;
&lt;p&gt;C/C&lt;ins&gt;插件应该是我们嵌入式中最常用的插件了。这个插件提供了包括智能代码补全、代码格式化、调试支持等在内的全方位的C/C&lt;/ins&gt;开发功能。&lt;/p&gt;
&lt;h3 id=&#34;CMake-Tools&#34;&gt;CMake Tools&lt;/h3&gt;
&lt;p&gt;CMake Tools 是一个用于快速创建和管理CMake项目的插件，可以帮助我们简化嵌入式开发中的构建过程。&lt;/p&gt;
&lt;h3 id=&#34;DeviceTree&#34;&gt;DeviceTree&lt;/h3&gt;
&lt;p&gt;DeviceTree是一个设备树语法插件，可以方便我们阅读设备树文件。&lt;/p&gt;
&lt;h3 id=&#34;Doxygen&#34;&gt;Doxygen&lt;/h3&gt;
&lt;p&gt;在进行嵌入式开发时，编写高质量的文档是十分重要的。Doxygen Documentation Generator插件可以帮助你自动生成代码的文档，使你能够更专注于编码，而无需担心文档的编写。&lt;/p&gt;
&lt;h2 id=&#34;最后一段&#34;&gt;最后一段&lt;/h2&gt;
&lt;p&gt;如果你还有什么推荐的 VS Code 插件，欢迎留言。&lt;/p&gt;
&lt;p&gt;大家完全不用担心这篇文章会过时，随着 VS Code 的版本更新和插件更新，本文也会随之更新。关于 VS Code 内容的后续更新，你可以关注我在 GitHub 上的前端入门项目，项目地址是：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/qianguyihao/Web&#34;&gt;https://github.com/qianguyihao/Web&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;一个超级详细和真诚的前端入门项目。&lt;/p&gt;
&lt;h2 id=&#34;todo&#34;&gt;todo&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/qianguyihao/Web/issues/84&#34;&gt;issues 84&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;参考链接&#34;&gt;参考链接&lt;/h2&gt;
&lt;h3 id=&#34;2021年&#34;&gt;2021年&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;中文版 Awesome VS Code：&lt;a href=&#34;https://github.com/formulahendry/awesome-vscode-cn&#34;&gt;https://github.com/formulahendry/awesome-vscode-cn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2020年&#34;&gt;2020年&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://juejin.im/post/5ea40c6751882573b219777d&#34;&gt;VSCode 插件大全｜ VSCode 高级玩家之第二篇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.supuwoerc.xyz/tools/vscode/plugins.html&#34;&gt;http://www.supuwoerc.xyz/tools/vscode/plugins.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://zhuanlan.zhihu.com/p/99462672&#34;&gt;如何让 VS Code 更好用 10 倍？这里有一份 VS Code 新手指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://lyreal666.com/%E9%82%A3%E4%BA%9B%E4%BD%A0%E5%BA%94%E8%AF%A5%E8%80%83%E8%99%91%E5%8D%B8%E8%BD%BD%E7%9A%84-VSCode-%E6%89%A9%E5%B1%95/#more&#34;&gt;那些你应该考虑卸载的 VSCode 扩展&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://juejin.im/post/5d74eb5c51882525017787d9&#34;&gt;VS Code 折腾记 - (16) 推荐一波实用的插件集&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://juejin.im/post/5db66672f265da4d0e009aad&#34;&gt;VSCode 前端必备插件，有可能你装了却不知道如何使用？&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://juejin.im/post/5a08d1d6f265da430f31950e&#34;&gt;能让你开发效率翻倍的 VSCode 插件配置（上）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://segmentfault.com/a/1190000012811886&#34;&gt;https://segmentfault.com/a/1190000012811886&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://idoubi.cc/2019/07/08/vscode-sublime-theme/&#34;&gt;「Vscode」打造类 sublime 的高颜值编辑器&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://lsqy.tech/2020/03/14/20200314Mac-Vscode%E5%BF%AB%E6%8D%B7%E9%94%AE/&#34;&gt;Mac Vscode 快捷键&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://mp.weixin.qq.com/s?src=11&amp;amp;timestamp=1591581536&amp;amp;ver=2387&amp;amp;signature=i4xLZlLe1Gkl7OiBIhPO*VSeNB5lzFgTY-dgNW9E9ZbtIAv4bnJ1RdAAZdhvDw*cg-DmMcUa-V8NSUdV-tthmXZCq3ht4edCweq6v0QxKjnh8IuAxyyh5qymdRui*8iE&amp;amp;new=1&#34;&gt;使用 VSCode 的一些技巧&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;转载来源 &lt;a href=&#34;https://github.com/qianguyihao/Web/blob/master/00-%E5%89%8D%E7%AB%AF%E5%B7%A5%E5%85%B7/01-VS%20Code%E7%9A%84%E4%BD%BF%E7%94%A8.md&#34;&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="vscode" />
        <category term="插件" />
        <category term="编码" />
        <updated>2021-10-18T04:25:00.000Z</updated>
    </entry>
    <entry>
        <id>https://blog.17lai.site/posts/647e6265/</id>
        <title>Vim IDE Docker 以及中文指南</title>
        <link rel="alternate" href="https://blog.17lai.site/posts/647e6265/"/>
        <content type="html">&lt;blockquote&gt;
&lt;p&gt;Docker Vim IDE 由博主定制，加入中文环境配置，支持CJK。并升级到最新版本！&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;Vim-Docker&#34;&gt;&lt;a href=&#34;https://hub.docker.com/r/bloodstar/vim&#34;&gt;Vim Docker&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/04/06/20250406164546.webp&#34; alt=&#34;Vim Docker&#34;&gt;&lt;/p&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker pull bloodstar&amp;#x2F;vim&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;alias edit&amp;#x3D;&amp;#39;docker run -ti --rm -v $(pwd):&amp;#x2F;home&amp;#x2F;developer&amp;#x2F;workspace bloodstar&amp;#x2F;vim&amp;#39; 
edit some.file 
alias edit_update&amp;#x3D;&amp;quot;docker pull bloodstar&amp;#x2F;vim:latest&amp;quot;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;Vim-IDE-Docker&#34;&gt;&lt;a href=&#34;https://hub.docker.com/r/bloodstar/drop-in&#34;&gt;Vim IDE Docker&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2025/04/06/20250406164546-1.webp&#34; alt=&#34;drop-in&#34;&gt;&lt;/p&gt;
&lt;h4 id=&#34;What’s-inside&#34;&gt;What’s inside:&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;http://www.alpinelinux.org/&#34;&gt;&lt;code&gt;Alpine Linux&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.vim.org/&#34;&gt;&lt;code&gt;Vim&lt;/code&gt;&lt;/a&gt; + a ton of awesome plugins &lt;em&gt;see &lt;a href=&#34;https://hub.docker.com/r/bloodstar/vim/&#34;&gt;&lt;code&gt;bloodstar/vim:latest&lt;/code&gt;&lt;/a&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Good support of &lt;a href=&#34;https://golang.org/&#34;&gt;&lt;code&gt;Golang&lt;/code&gt;&lt;/a&gt; development with &lt;a href=&#34;https://hub.docker.com/r/bloodstar/go-tools/&#34;&gt;&lt;code&gt;bloodstar/go-tools&lt;/code&gt;&lt;/a&gt; container&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://tmux.github.io/&#34;&gt;&lt;code&gt;tmux&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://powerline.readthedocs.io/&#34;&gt;&lt;code&gt;powerline&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://mosh.mit.edu/&#34;&gt;&lt;code&gt;Mosh&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;OpenSSH, Bash, OMF, Python, etc.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;how-to-start-the-daemon-and-all-containers&#34;&gt;how to start the daemon(and all containers)&lt;/h4&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;docker create -v &amp;#39;&amp;#x2F;usr&amp;#x2F;lib&amp;#x2F;go&amp;#39; --name go-tools \
&amp;#39;bloodstar&amp;#x2F;go-tools&amp;#39; &amp;#39;&amp;#x2F;bin&amp;#x2F;true&amp;#39;

docker run -v $(&amp;#39;pwd&amp;#39;):&amp;#x2F;home&amp;#x2F;developer&amp;#x2F;workspace \
--volumes-from go-tools \
-v ~&amp;#x2F;.ssh&amp;#x2F;pub_rsa:&amp;#x2F;etc&amp;#x2F;ssh_keys:ro \
-v &amp;#x2F;etc&amp;#x2F;localtime:&amp;#x2F;etc&amp;#x2F;localtime:ro \
-d -p 80:80 -p 8080:8080 -p 62222:62222 -p 60001:60001&amp;#x2F;udp \
--name drop-in bloodstar&amp;#x2F;drop-in&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;p&gt;&lt;em&gt;&lt;code&gt;-v /etc/localtime:/etc/localtime:ro&lt;/code&gt; - makes tmux display local time&lt;/em&gt;&lt;/p&gt;
&lt;h4 id=&#34;how-to-connect&#34;&gt;how to connect:&lt;/h4&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;mosh --ssh&amp;#x3D;&amp;quot;ssh -p 62222&amp;quot; -- developer@$&amp;lt;ip&amp;gt; tmux -u&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h4 id=&#34;or-without-host-identity-check&#34;&gt;or without host identity check:&lt;/h4&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;mosh --ssh&amp;#x3D;&amp;quot;ssh -o StrictHostKeyChecking&amp;#x3D;no -p 62222&amp;quot; -- developer@$&amp;lt;ip&amp;gt; tmux -u&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h4 id=&#34;Useful-Bash-scripts&#34;&gt;Useful Bash scripts&lt;/h4&gt;
&lt;h6 id=&#34;Connect&#34;&gt;&lt;strong&gt;Connect&lt;/strong&gt;&lt;/h6&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;#!&amp;#x2F;bin&amp;#x2F;bash
ip&amp;#x3D;$(docker inspect --format &amp;#39;&amp;#123;&amp;#123; .NetworkSettings.IPAddress &amp;#125;&amp;#125;&amp;#39; drop-in)
mosh --ssh&amp;#x3D;&amp;quot;ssh -p 62222&amp;quot; -- developer@$ip tmux -u&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h6 id=&#34;start-the-daemon-and-all-containers&#34;&gt;&lt;strong&gt;start the daemon(and all containers)&lt;/strong&gt;&lt;/h6&gt;
&lt;figure&gt;&lt;div class=&#34;code-area&#34;&gt;&lt;pre class=&#34;line-numbers language-bash&#34; data-language=&#34;bash&#34; data-start=&#34;1&#34;&gt;&lt;code class=&#34;language-bash&#34;&gt;#!&amp;#x2F;bin&amp;#x2F;bash
dtc_id&amp;#x3D;$(docker ps -a -q --filter &amp;#39;name&amp;#x3D;vim-go-tools&amp;#39;)
if [[ -z &amp;quot;$&amp;#123;dtc_id&amp;#125;&amp;quot; ]]; then
 echo &amp;#39;vim-go-tools container not found. Creating...&amp;#39;
 docker create -v &amp;#39;&amp;#x2F;usr&amp;#x2F;lib&amp;#x2F;go&amp;#39; --name &amp;#39;vim-go-tools&amp;#39; \
   &amp;#39;bloodstar&amp;#x2F;go-tools&amp;#39; &amp;#39;&amp;#x2F;bin&amp;#x2F;true&amp;#39;
 echo &amp;#39;Done!&amp;#39;
fi
echo &amp;#39;starting daemon...&amp;#39;
docker run -v $(&amp;#39;pwd&amp;#39;):&amp;#x2F;home&amp;#x2F;developer&amp;#x2F;workspace \
  --volumes-from vim-go-tools \
  -v ~&amp;#x2F;.ssh&amp;#x2F;pub_rsa:&amp;#x2F;etc&amp;#x2F;ssh_keys:ro \
  -v &amp;#x2F;etc&amp;#x2F;localtime:&amp;#x2F;etc&amp;#x2F;localtime:ro \
  -e &amp;quot;GEMAIL&amp;#x3D;&amp;lt;github email&amp;gt;&amp;quot; \
  -e &amp;quot;GNAME&amp;#x3D;&amp;lt;github name&amp;gt;&amp;quot; \
  -d -p 80:80 -p 8080:8080 -p 62222:62222 -p 60001:60001&amp;#x2F;udp \
  --name drop-in bloodstar&amp;#x2F;drop-in
echo &amp;#39;Done!&amp;#39;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/figure&gt;
&lt;h2 id=&#34;Vim-中文快查表-戳这里&#34;&gt;&lt;a href=&#34;/cheatsheets/Vim_CN.docset/Contents/Resources/Documents/&#34;&gt;Vim 中文快查表&lt;/a&gt;   &amp;lt;= 戳这里&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;Tips: 在网页上端导航栏，[快查] =&amp;gt; [更多快查表]，有更多快查表！快去看看吧。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;Vim&#34;&gt;Vim&lt;/h2&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2021/09/1520210915150901.png&#34; alt=&#34;vim速查&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;Vim简明教程&#34;&gt;Vim简明教程&lt;/h2&gt;
&lt;h3 id=&#34;1-键位图&#34;&gt;1. 键位图&lt;/h3&gt;
&lt;p&gt;&lt;img src=&#34;https://cimg1.17lai.site/data/2022/10/06/20221006145923.gif&#34; alt=&#34;vi-vim-cheat-sheet-sch&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;vi-vim-cheat-sheet-sch&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;vi-vim-cheat-sheet-sch&lt;/p&gt;
&lt;p&gt;vim分为三种主要模式，分别是&lt;strong&gt;命令模式（Command mode）&lt;/strong&gt;，&lt;strong&gt;输入模式（Insert mode）&lt;strong&gt;和&lt;/strong&gt;底线命令模式（Last line mode）&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id=&#34;2-命令模式&#34;&gt;2. 命令模式&lt;/h3&gt;
&lt;p&gt;用户刚刚启动 vi/vim，便进入了命令模式。&lt;/p&gt;
&lt;h4 id=&#34;2-1-光标移动&#34;&gt;2.1. 光标移动&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;h 或 向左箭头键(←)&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标向 左 移动一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;j 或 向下箭头键(↓) 或&lt;code&gt;&amp;lt;Enter&amp;gt;&lt;/code&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标向 下 移动一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;k 或 向上箭头键(↑)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标向 上 移动一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;l 或 向右箭头键(→) 或 &lt;code&gt;&amp;lt;space&amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标向 右 移动一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;w/W&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到下一个单词，大写把标点符号当做单词的一部分&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;e/E&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到词尾，大写把标点符号当做单词的一部分&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;b/B&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到上一个单词，大写把标点符号当做单词的一部分&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;+&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标移动到非空格符的下一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;-&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标移动到非空格符的上一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到这个档案的最后一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;gg&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到这个档案的第一行，相当于 1G&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;[Ctrl] + f 或 [Page Down]&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;屏幕『向下』移动一页&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;[Ctrl] + b 或 [Page Up]&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;屏幕『向上』移动一页&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;[Ctrl] + d&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;屏幕『向下』移动半页&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;[Ctrl] + u&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;屏幕『向上』移动半页&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;0 或功能键[Home]&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;数字『 0 』，移动到这一行的最前面字符处&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;$ 或功能键[End]&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;移动到这一行的最后面字符处&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;H&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标移动到这个屏幕的最上方那一行的第一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;M&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标移动到这个屏幕的中央那一行的第一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;L&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;光标移动到这个屏幕的最下方那一行的第一个字符&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;2-2-复制、粘贴&#34;&gt;2.2. 复制、粘贴&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;y + 光标移动符&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;复制光标所在到移动范围的内容，例如： yj：复制游标所在的那一整行 yG：复制光标所在到最后一行的内容 yw：复制光标所在到下一个单词的内容&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;yy&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;复制游标所在的那一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;p&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在光标后粘贴，如果是单词级的粘贴，就会在光标后一位粘贴，如果是行级的粘贴，就会在光标下一行粘贴，下面的 P 粘贴时同理。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;P&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在光标前粘贴&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;2-3-文本修改&#34;&gt;2.3. 文本修改&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;x&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向 后 删除一个字符 ，相当于[del]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;X&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向 前 删除一个字符，相当于 [backspace]&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;d + 光标移动符&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除光标所在到移动范围的内容，例如： dj：删除游标所在的那一整行 dG：删除光标所在到最后一行的内容 dw：删除光标所在到下一个单词的内容&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;dd&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;删除游标所在的那一整行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;J&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将光标所在行与下一行的数据结合成同一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;r + 「字符」&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;替换光标处的单词为该字符&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;R&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;进入replace mode，直到接收到[Esc]按键信号退出该模式&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;2-4-重复动作&#34;&gt;2.4. 重复动作&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;u&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Undo，复原前一个动作。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;[Ctrl] + r&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;重做上一个动作。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;重复前一个动作。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;n&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向下重复前一个搜寻的动作。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;N&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向上重复前一个搜寻的动作。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;「n」+ 命令符&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;「n」是数字，一般可以理解为重复n次该动作，例如： 10j 表示向下移动10行&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;2-5-可视模式（vim-only）&#34;&gt;2.5. 可视模式（vim only）&lt;/h4&gt;
&lt;p&gt;命令模式下按&lt;code&gt;ctrl + v&lt;/code&gt;进入可视模式，这是一个比较特别地模式。&lt;/p&gt;
&lt;p&gt;这个模式可以移动光标，选择一大片区域，然后可以对这片区域进行操作。&lt;/p&gt;
&lt;h3 id=&#34;3-输入模式&#34;&gt;3. 输入模式&lt;/h3&gt;
&lt;p&gt;在命令模式下按下i就进入了输入模式。&lt;/p&gt;
&lt;p&gt;在输入模式中，除了ESC键退出输入模式，其他按键和平常编辑模式是一样的。&lt;/p&gt;
&lt;h4 id=&#34;3-1-进入输入模式&#34;&gt;3.1. 进入输入模式&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;i&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Insert，从当前光标前开始输入&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Insert，在目前所在行的第一个非空格符处开始输入&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;a&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Append，从当前光标后开始输入&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;Append，从光标所在行的最后一个字符处开始输入&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;o&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前光标所在的下一行处输入新的一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;O&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在当前光标所在处的上一行输入新的一行&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;c + 光标移动符&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;可以理解先按&lt;code&gt;d + 光标移动符&lt;/code&gt;，然后再按&lt;code&gt;a&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;C&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;可以理解先按&lt;code&gt;dd&lt;/code&gt;，然后再按&lt;code&gt;a&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;4-底线命令模式&#34;&gt;4. 底线命令模式&lt;/h3&gt;
&lt;p&gt;在命令模式下按下&lt;code&gt;:&lt;/code&gt;、&lt;code&gt;/&lt;/code&gt;、&lt;code&gt;?&lt;/code&gt;键位就进入了底线命令模式。&lt;/p&gt;
&lt;p&gt;按ESC键退出底线命令模式。&lt;/p&gt;
&lt;h4 id=&#34;4-1-查找替换&#34;&gt;4.1. 查找替换&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;语句&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;/word&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串，就输入 /vbird 即可！ (常用)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;?word&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;向上搜索word字符串&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:n1,n2 s/word1/word2/g&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;n1 与 n2 为数字。在第 n1 与 n2 行之间将 word1 替换为 word2 。特别地，最后一行为&lt;code&gt;$&lt;/code&gt;，&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:n1,n2 s#word1#word2#g&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;效果同上，这个主要用于替换&lt;code&gt;/&lt;/code&gt;符号，例如每一行行首添加&lt;code&gt;//&lt;/code&gt;，可以这样操作： &lt;code&gt;:1,$ s#^#//#g&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;4-2-文件操作&#34;&gt;4.2. 文件操作&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:w [filename]&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将编辑的数据写入到filename文件中，如果不加参数，默认是当前文件&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:w!&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;若文件属性为『只读』时，强制写入该档案，前提是得有文件的写权限。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:q 或 ZQ&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;退出vim，如果未保存的内容，该指令执行失败&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:q!&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;若曾修改过档案，又不想储存，使用 ! 为强制离开不储存档案。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:wq 或 ZZ&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;储存后离开&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:wq!&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;强制储存后离开&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:r [filename]&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;在编辑的数据中，读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:n1,n2 w [filename]&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;将 n1 到 n2 的内容储存成 filename 这个档案。&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:! command&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;不退出vim执行command指令，多用于调试脚本。&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h4 id=&#34;4-3-其他功能&#34;&gt;4.3. 其他功能&lt;/h4&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&#34;text-align:left&#34;&gt;按键&lt;/th&gt;
&lt;th style=&#34;text-align:left&#34;&gt;动作&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;&lt;strong&gt;:set nu&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;显示行号&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:set nonu&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;取消行号&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:sv&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;当前界面打开文件，并呈纵向分布&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:vs&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;当前界面打开文件，并呈横向分布&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&#34;text-align:left&#34;&gt;:set fileformat=unix&lt;/td&gt;
&lt;td style=&#34;text-align:left&#34;&gt;由Windows上传到linux的脚本文件，直接执行会报错，需要将其由dos文件格式改unix格式&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;5-扩展的vim功能&#34;&gt;5. 扩展的vim功能&lt;/h3&gt;
&lt;p&gt;当然，如果仅仅只有原生态的功能还不能让vim成为一个好用的ide，扩展功能才是vim的灵魂所在。&lt;/p&gt;
&lt;h2 id=&#34;参考&#34;&gt;参考&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.runoob.com/linux/linux-vim.html&#34;&gt;菜鸟驿站的vim教程&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;系列教程&#34;&gt;&lt;strong&gt;系列教程&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&#34;/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;全部文章RSS订阅&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&#34;tools系列&#34;&gt;&lt;strong&gt;tools系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/tools/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Tools 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1acb0edb/&#34;&gt;Doxygen入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/647e6265/&#34;&gt;Vim IDE Docker 以及中文指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/44557ab0/&#34;&gt;第一次使用VS CODE时你应该指导的一切配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3b296307/&#34;&gt;winrar去广告和破解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f4926c88/&#34;&gt;RSS的使用与Tiny Tiny RSS Selfhost自建&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670/&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f12af66/&#34;&gt;信息时代必备的搜索引擎高级技巧使用指南&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/c17af2e6/&#34;&gt;如何安装OfficeLTSC2021并KMS破解激活教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3194c5b3/&#34;&gt;windows系统空间清理与速度优化&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;图书、音乐、视频多媒体锦集&#34;&gt;&lt;strong&gt;图书、音乐、视频多媒体锦集&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas RSS分类订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;视频图书和音乐完全自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/3847ad58/&#34;&gt;如何使用media Go,MusicBrainz,Mp3tag工具刮削音乐 整理音乐资料库&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2b9325d0/&#34;&gt;私人在线音乐服务器搭建与使用介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/84b4059a/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;hexo博客博文撰写篇之完美笔记大攻略终极完全版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Nas系列&#34;&gt;&lt;strong&gt;Nas系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/nas/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Nas 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9806d7f1/&#34;&gt;从零开始玩PT-入门到精通&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/dc1c8194/&#34;&gt;如何建立自己的私人电子图书馆–出版书籍，网络小说，漫画一网打尽!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/7d34898d&#34;&gt;Zlibrary 图书资源下载与 Calibre 图书管理打造结构化电子图书馆高阶教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/db7bf49b/&#34;&gt;音视频图书和音乐自动化管理框架图解&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/e6d40157/&#34;&gt;如何使用tinyMediaManager刮削电影和电视剧，动画，并自动下载字幕&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/2f8fb473/&#34;&gt;Potplayer终极优化教程实现PC视频播放最强画质&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f76d9dd/&#34;&gt;Transmission 使用及其配置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/f6b32521/&#34;&gt;Qbittorrent 参数详细设置教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/43241a29&#34;&gt;IPFS从零开始快速入门教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9404dba0&#34;&gt;家庭网络优化指南：提升NAT类型，降低游戏延迟、提高下载速度&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/b82c9d4e&#34;&gt;内网域名管理+DNS加速+DNS去广告+魔法上网的终极系统&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/8f152670&#34;&gt;如何创建属于自己的私人资料库与私人搜索引擎&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/bb600b4b/&#34;&gt;PT 工具集，Linux硬链接助手&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/77da2f80/&#34;&gt;QNAP 修改应用启动顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/10fee780/&#34;&gt;qnap硬盘移动位置&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/5b1993ac/&#34;&gt;qnap IO 错误消除&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&#34;Docker系列&#34;&gt;&lt;strong&gt;Docker系列&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&#34;/categories/docker/atom.xml&#34;&gt;&lt;i class=&#34;fas fa-rss&#34;&gt;&lt;/i&gt;&lt;strong&gt;Docker 分类 RSS 订阅&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;/posts/42b6a86d/&#34;&gt;Docker使用简明教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/9912bd5d/&#34;&gt;使用jeckett,sonarr,iyuu,qt,emby打造全自动追剧流程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/1802a8a7/&#34;&gt;为知笔记私有化Docker部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/593cc323/&#34;&gt;Earthly 一个更加强大的镜像构建工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/90e60aac/&#34;&gt;使用 Shell 脚本实现一个简单 Docker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/465d2738/&#34;&gt;如何使用Traefik V2 在Ubuntu20.04 上面来做 Dockers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;/posts/462f1e5c/&#34;&gt;通过IPV6访问Qnap NAS中Docker的服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10/dist/style.css&#34;&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/d3@7&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-view@0.18.10&#34;&gt;&lt;/script&gt;&lt;script src=&#34;https://fastly.jsdelivr.net/npm/markmap-toolbar@0.18.10&#34;&gt;&lt;/script&gt;
&lt;link rel=&#34;stylesheet&#34; href=&#34;/css/markmap.css&#34;&gt;

&lt;script src=&#34;/js/markmap.js&#34;&gt;&lt;/script&gt;
</content>
        <category term="linux" />
        <category term="docker" />
        <category term="vim" />
        <category term="ide" />
        <updated>2021-09-15T04:25:00.000Z</updated>
    </entry>
</feed>
