<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Linux on Logan的博客</title>
        <link>https://qh.1357810.xyz/tags/linux/</link>
        <description>Recent content in Linux on Logan的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <copyright>logan</copyright>
        <lastBuildDate>Mon, 25 Nov 2024 00:00:00 +0800</lastBuildDate><atom:link href="https://qh.1357810.xyz/tags/linux/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>debian的安装</title>
        <link>https://qh.1357810.xyz/articles/linux/debian/install/</link>
        <pubDate>Mon, 25 Nov 2024 00:00:00 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/debian/install/</guid>
        <description>&lt;img src="https://logan.1357810.xyz/cover/debiancover.png" alt="Featured image of post debian的安装" /&gt;&lt;h1 id=&#34;debian的安装&#34;&gt;
    &lt;a href=&#34;#debian%e7%9a%84%e5%ae%89%e8%a3%85&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    debian的安装
&lt;/h1&gt;&lt;h3 id=&#34;详细文档-&#34;&gt;
    &lt;a href=&#34;#%e8%af%a6%e7%bb%86%e6%96%87%e6%a1%a3-&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    详细文档 :
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://wiki.debian.org/zh_CN/FrontPage&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://wiki.debian.org/zh_CN/FrontPage


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


   详细的wiki&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.debian.org/doc/manuals/debian-handbook/index.zh-cn.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://www.debian.org/doc/manuals/debian-handbook/index.zh-cn.html


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


  手册&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.debian.org/doc/manuals/debian-reference/index.zh-cn.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://www.debian.org/doc/manuals/debian-reference/index.zh-cn.html


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


  参考手册&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.debian.org/releases/stable/arm64/index.zh-cn.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://www.debian.org/releases/stable/arm64/index.zh-cn.html


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


   安装手册&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://wiki.debian.org/zh_CN/NetworkConfiguration&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://wiki.debian.org/zh_CN/NetworkConfiguration


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


  网络配置&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;一键装机脚本见我的github&#34;&gt;
    &lt;a href=&#34;#%e4%b8%80%e9%94%ae%e8%a3%85%e6%9c%ba%e8%84%9a%e6%9c%ac%e8%a7%81%e6%88%91%e7%9a%84github&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    一键装机脚本见我的GitHub:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/loganoxo/Config/tree/master/linux/install&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/loganoxo/Config/tree/master/linux/install


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/cover/debianshow.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;debian.jpg&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;一debian虚拟机的安装&#34;&gt;
    &lt;a href=&#34;#%e4%b8%80debian%e8%99%9a%e6%8b%9f%e6%9c%ba%e7%9a%84%e5%ae%89%e8%a3%85&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    一、debian虚拟机的安装
&lt;/h2&gt;&lt;h3 id=&#34;1用虚拟机安装debian12&#34;&gt;
    &lt;a href=&#34;#1%e7%94%a8%e8%99%9a%e6%8b%9f%e6%9c%ba%e5%ae%89%e8%a3%85debian12&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1、用虚拟机安装debian12
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;vmware 桥接模式的虚拟机不能用quanx的代理连接国外网站; nat模式是虚拟机自己组成子网,通过nat转发流量到宿主机,所以可以通过quanx连接国外网站;&lt;/li&gt;
&lt;li&gt;但是nat模式下,宿主机默认不能直接通过虚拟机的内部 IP（例如 172.x.x.x）进行远程连接（如 SSH），因为 NAT 模式下虚拟机的网络是一个私有子网，与宿主机的网络隔离,除非用端口转发(windows上的nat)&lt;/li&gt;
&lt;li&gt;mac中,vmware_fusion提供了自定义网络,选这个,其实是用的桥接网络,加上nat转发流量连接外网; 宿主机既可以ssh连接虚拟机,虚拟机也可以使用quanx访问国外网站&lt;/li&gt;
&lt;li&gt;选择第二个 &lt;code&gt;Graphical install&lt;/code&gt;, 安装界面可以用鼠标点击; 第一个 &lt;code&gt;Install&lt;/code&gt; 的安装界面只能用键盘不能用鼠标&lt;/li&gt;
&lt;li&gt;美国: United States&lt;/li&gt;
&lt;li&gt;步骤1:语言选择美国英文:安装过程中显示的语言,所选语言也将是系统安装后的默认语言;安装后可用 &lt;code&gt;sudo dpkg-reconfigure locales&lt;/code&gt; 重新配置&lt;/li&gt;
&lt;li&gt;步骤2:选择区域, 中国; 会影响时区; 先选other,再asia,再选china&lt;/li&gt;
&lt;li&gt;步骤3:因为没有找到符合你选择的语言和国家组合(我选的是美国英文+中国时区)的预设区域设置，系统会提示你重新选语言,依然选美国英文&lt;/li&gt;
&lt;li&gt;步骤4:Configure the keyboard,键盘布局,选择American English;安装后可用 &lt;code&gt;sudo dpkg-reconfigure keyboard-configuration&lt;/code&gt; 重新配置&lt;/li&gt;
&lt;li&gt;步骤5:hostname, 设置为 &lt;code&gt;prod&lt;/code&gt; 或 &lt;code&gt;dev&lt;/code&gt; 或 &lt;code&gt;test&lt;/code&gt; ; 这样的格式&lt;/li&gt;
&lt;li&gt;步骤6:domain name; 设置为 &lt;code&gt;vm.local&lt;/code&gt;  ; 这样的格式&lt;/li&gt;
&lt;li&gt;步骤7:输入两次root用户的密码;&lt;/li&gt;
&lt;li&gt;步骤8:full name; 全名,真实姓名(英文的姓+名), 用于显示的; 就设置为 helq就可以了 ;&lt;/li&gt;
&lt;li&gt;步骤9:username; 用于登录的; 设为helq&lt;/li&gt;
&lt;li&gt;步骤10:输入两次helq用户的密码;&lt;/li&gt;
&lt;li&gt;步骤11:Partition disks; 选择 Guided - use entire disk ; 不分区,使用整个磁盘(虚拟机创建的虚拟磁盘);&lt;/li&gt;
&lt;li&gt;步骤12:会提示:Partition disks; Note that all data on the disk you select will be erased, but not before you have confirmed that you really want to make the changes. 就是个磁盘擦除警告,直接选择那个磁盘,回车下一步&lt;/li&gt;
&lt;li&gt;步骤13:Selected for partitioning:The disk can be partitioned using one of several different schemes. If you are unsure, choose the first one. 选择分区方案; 直接选择第一个: All files in one partition&lt;/li&gt;
&lt;li&gt;步骤14:This is an overview of your currently configured partitions and mount points. Select a partition to modify its settings (file system, mount point, etc.), a free space to create partitions, or a device to initialize its partition table. 即当前配置的分区和挂载点的概述, 选择Finish partitioning and write changes to disk,继续回车&lt;/li&gt;
&lt;li&gt;步骤15:If you continue, the changes listed below will be written to the disks. Otherwise, you will be able to make further changes manually; 一个确认提示, 选择yes, 回车继续;如果选择默认的no, 会回到上一步&lt;/li&gt;
&lt;li&gt;步骤16:Configure the package manager;Scanning your installation media finds the label; 是否扫描额外的安装介质; 选择no ,回车继续&lt;/li&gt;
&lt;li&gt;步骤17:A network mirror can be used to supplement the software that is included on the installation media. This may also make newer versions of software available; 网络镜像的配置; debian12不用镜像,安装包里自带了,直接选no回车继续; debian11安装时,这里也选no;但是11.7.0那个包安装时,即便有梯子下载速度也很慢,所以debian这里需要断网; 但是11.11.0的包我安装的时候联网就通过了;&lt;/li&gt;
&lt;li&gt;步骤18:Configuring popularity-contest; 提示是否开启匿名信息统计,选择no回车&lt;/li&gt;
&lt;li&gt;步骤19:选择默认的软件包:SSH server、standard system utilities; 回车继续&lt;/li&gt;
&lt;li&gt;步骤20: 安装结束; 回车 continue 会自动重启; 关机后需要把 虚拟机的设置里面的 CD/DVD 驱动器 取消连接&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;二debian的环境搭建&#34;&gt;
    &lt;a href=&#34;#%e4%ba%8cdebian%e7%9a%84%e7%8e%af%e5%a2%83%e6%90%ad%e5%bb%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    二、debian的环境搭建
&lt;/h2&gt;&lt;h3 id=&#34;1软件包的源配置&#34;&gt;
    &lt;a href=&#34;#1%e8%bd%af%e4%bb%b6%e5%8c%85%e7%9a%84%e6%ba%90%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1、软件包的源配置
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;/etc/apt/sources.list&lt;/li&gt;
&lt;li&gt;debian12那个系统DVD安装好后,发现 /etc/apt/sources.list 中的内容是 &lt;code&gt;deb cdrom:[Debian GNU/Linux 12.8.0 _Bookworm_ - Official arm64 DVD Binary-1 with firmware 20241109-11:05]/ bookworm contrib main non-free-firmware&lt;/code&gt;,因为这个系统最初通过离线 DVD 安装的,安装的DVD中包含所有的了&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;a备份原来的&#34;&gt;
    &lt;a href=&#34;#a%e5%a4%87%e4%bb%bd%e5%8e%9f%e6%9d%a5%e7%9a%84&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    a、备份原来的
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp /etc/apt/sources.list /etc/apt/sources.list.bak&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;b解释&#34;&gt;
    &lt;a href=&#34;#b%e8%a7%a3%e9%87%8a&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    b、解释
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;deb: 二进制软件包的来源，这些包是已经编译好的，可以直接安装到你的系统中,它是普通用户用来安装应用程序和库的来源&lt;/li&gt;
&lt;li&gt;deb-src: 源码软件包的来源。源码包包含了软件的源代码，你可以从中编译和安装软件,如果需要修改或自行编译软件，可以用到这个源&lt;/li&gt;
&lt;li&gt;bookworm/bullseye:  debian12/debian11 ;是发行版的代号&lt;/li&gt;
&lt;li&gt;main：完全开源的软件，符合 Debian 自由软件指南;&lt;/li&gt;
&lt;li&gt;contrib：自由软件，但需要依赖非自由的软件（如驱动或库）&lt;/li&gt;
&lt;li&gt;non-free：非自由软件（可能有版权或许可限制，用户可以使用但不能修改）&lt;/li&gt;
&lt;li&gt;non-free-firmware：从 non-free 中分离出来的非自由固件，专用于硬件驱动和设备运行支持&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;c使用官方的源需要梯子&#34;&gt;
    &lt;a href=&#34;#c%e4%bd%bf%e7%94%a8%e5%ae%98%e6%96%b9%e7%9a%84%e6%ba%90%e9%9c%80%e8%a6%81%e6%a2%af%e5%ad%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    c、使用官方的源(需要梯子)
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su &lt;span class=&#34;c1&#34;&gt;#进入root用户&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h5 id=&#34;idebian12&#34;&gt;
    &lt;a href=&#34;#idebian12&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    I、debian12
&lt;/h5&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; /etc/apt/sources.list &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 提供主要的软件包库,是系统大部分软件的来源,包括基础的操作系统组件和应用程序包,用于升级系统和安装软件
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb-src http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 提供安全性修复的更新,包含及时修复的安全漏洞补丁,用于修复系统或软件中的已知漏洞
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb-src http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 快速修复一些关键问题,目的是解决一些无法等到下一个点版本(例如从 12.1 到 12.2)发布才能修复的问题
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 反向移植,指从 Debian 的较高版本中(例如 bookworm)选取特定的软件包,并在当前稳定版本(例如 bullseye)上进行重新编译和打包;用户可以在稳定版系统中使用更高版本的应用程序或工具,而无需升级整个系统到测试版或不稳定版
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;debian11 只需把 bookworm 改为 bullseye&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;d使用国内镜像源&#34;&gt;
    &lt;a href=&#34;#d%e4%bd%bf%e7%94%a8%e5%9b%bd%e5%86%85%e9%95%9c%e5%83%8f%e6%ba%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    d、使用国内镜像源
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; /etc/apt/sources.list &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 默认注释了源码镜像以提高 apt update 速度，如有需要可自行取消注释
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-updates main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ bullseye-backports main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb http://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# # deb-src http://mirrors.tuna.tsinghua.edu.cn/debian-security bullseye-security main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;deb http://security.debian.org/debian-security bullseye-security main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deb-src http://security.debian.org/debian-security bullseye-security main contrib non-free
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;上面是debian11的配置; debian12的去找镜像网站有相关配置,这里不写了&lt;/p&gt;
&lt;h4 id=&#34;e更新&#34;&gt;
    &lt;a href=&#34;#e%e6%9b%b4%e6%96%b0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    e、更新
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; apt-get update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list --upgradable &lt;span class=&#34;c1&#34;&gt;#查看可以更新的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt upgrade &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;fapt相关命令&#34;&gt;
    &lt;a href=&#34;#fapt%e7%9b%b8%e5%85%b3%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    f、apt相关命令
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update                           &lt;span class=&#34;c1&#34;&gt;# 更新包索引&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt upgrade                          &lt;span class=&#34;c1&#34;&gt;# 升级所有已安装的软件包到最新版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list python3                          &lt;span class=&#34;c1&#34;&gt;# 显示是否已安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install &amp;lt;package&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 安装指定的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt remove &amp;lt;package&amp;gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除指定的软件包（保留配置文件）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt purge &amp;lt;package&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 完全删除指定的软件包（包括配置文件）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt search &amp;lt;keyword&amp;gt;                      &lt;span class=&#34;c1&#34;&gt;# 搜索与关键字相关的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt show &amp;lt;package&amp;gt;                        &lt;span class=&#34;c1&#34;&gt;# 查看指定软件包的详细信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list --installed                      &lt;span class=&#34;c1&#34;&gt;# 列出所有已安装的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list                                  &lt;span class=&#34;c1&#34;&gt;# 列出所有可用的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg -l &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep &amp;lt;package&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 检查指定软件包是否已安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt autoremove                       &lt;span class=&#34;c1&#34;&gt;# 清理无用的依赖（卸载后遗留的包）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt autoclean                        &lt;span class=&#34;c1&#34;&gt;# 清理下载的已过期或无用的软件包缓存&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt clean                            &lt;span class=&#34;c1&#34;&gt;# 清理所有下载的包缓存（慎用）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt download &amp;lt;package&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 下载但不安装软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt-cache depends &amp;lt;package&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 检查指定软件包的依赖关系&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt-cache rdepends &amp;lt;package&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 检查哪些软件包依赖指定的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt --fix-broken install             &lt;span class=&#34;c1&#34;&gt;# 手动修复被破坏的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list &amp;lt;package&amp;gt;                        &lt;span class=&#34;c1&#34;&gt;# 列出与指定包相关的信息（包括状态、版本等）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt full-upgrade                     &lt;span class=&#34;c1&#34;&gt;# 执行全面升级（可能会移除不需要的包）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install -f                       &lt;span class=&#34;c1&#34;&gt;# 修复依赖关系并安装未完成的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt hold &amp;lt;package&amp;gt;                   &lt;span class=&#34;c1&#34;&gt;# 将指定软件包标记为保持当前版本（不升级）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt unhold &amp;lt;package&amp;gt;                 &lt;span class=&#34;c1&#34;&gt;# 取消对软件包的保持标记（允许升级）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt policy &amp;lt;package&amp;gt;                      &lt;span class=&#34;c1&#34;&gt;# 查看指定软件包的版本和安装来源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-add-repository &amp;lt;repository&amp;gt;      &lt;span class=&#34;c1&#34;&gt;# 添加 PPA 或自定义的源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo apt upgrade -y    &lt;span class=&#34;c1&#34;&gt;# 一次性更新包索引并升级所有软件包（跳过确认）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt dist-upgrade                     &lt;span class=&#34;c1&#34;&gt;# 执行发行版升级（处理复杂依赖变化）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-mark hold &amp;lt;package&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 阻止软件包升级（标记为 hold 状态）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-mark unhold &amp;lt;package&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 取消 hold 标记，允许升级&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt list --upgradable                &lt;span class=&#34;c1&#34;&gt;# 列出可以升级的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt-cache search &amp;lt;package&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 使用 apt-cache 搜索软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get check                        &lt;span class=&#34;c1&#34;&gt;# 检查系统是否有破损的依赖关系&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get changelog &amp;lt;package&amp;gt;          &lt;span class=&#34;c1&#34;&gt;# 查看指定软件包的变更日志&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo dpkg-reconfigure &amp;lt;package&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 重新配置已安装的软件包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo dpkg --configure -a                  &lt;span class=&#34;c1&#34;&gt;# 修复未正确配置的软件包&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;2网络配置&#34;&gt;
    &lt;a href=&#34;#2%e7%bd%91%e7%bb%9c%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2、网络配置
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;静态ip + 自定义dns&lt;/li&gt;
&lt;li&gt;自定义dns时, 不要去修改,/etc/resolv.conf,因为可能重启后失效; 去在 /etc/network/interfaces 配置&lt;/li&gt;
&lt;li&gt;ip addr  查看当前的ip&lt;/li&gt;
&lt;li&gt;vmware中配置了端口转发&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;0resolvconf&#34;&gt;
    &lt;a href=&#34;#0resolvconf&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    0、resolvconf
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;默认情况下,resolvconf并没有安装, 所以在 /etc/network/interfaces 中配置的 dns-nameservers 并不会自动同步到 /etc/resolv.conf, 并且每次系统重启或者使用命令 systemctl restart networking.service 后, resolv.conf 都会被 dhclient 覆盖;&lt;/li&gt;
&lt;li&gt;dhclient 是常用的 DHCP 客户端，它会根据 DHCP 服务器提供的 DNS 信息自动更新 /etc/resolv.conf, 查看 /etc/dhcp/dhclient.conf 中有request 里面有 domain-name, domain-name-servers, 和 domain-search;是 DHCP 客户端从 DHCP 服务器请求的选项,如果 DHCP 服务器提供了这些选项，dhclient 默认会更新 /etc/resolv.conf&lt;/li&gt;
&lt;li&gt;在不安装额外程序的情况下, 也可以使用命令 sudo chattr +i /etc/resolv.conf ,给这个文件设置只读权限, 这样就不会被覆盖了; sudo chattr -i /etc/resolv.conf 恢复权限&lt;/li&gt;
&lt;li&gt;resolvconf 依赖于 /etc/network/interfaces、DHCP 等服务来收集 DNS 配置信息，并通过这些信息更新 /etc/resolv.conf。resolvconf会将来自多个来源（例如 DHCP 客户端、静态配置、VPN 配置等）的 DNS 信息汇总并合并，最终由 resolvconf 更新 /etc/resolv.conf;&lt;/li&gt;
&lt;li&gt;安装 resolvconf 后, /etc/resolv.conf 被替换为符号链接,指向 /run/resolvconf/resolv.conf; 原来的resolv.conf中的内容被删除,备份在/etc/resolvconf/resolv.conf.d/original中&lt;/li&gt;
&lt;li&gt;安装了 resolvconf 后，会在/etc/dhcp/dhclient-enter-hooks.d/ 目录下创建 &lt;code&gt;resolvconf&lt;/code&gt; 脚本, dhclient 会通过这个脚本将获取到的 DNS 信息交给 resolvconf 管理; 这些动态信息(包括在/etc/network/interfaces中配置的)通常被写入 /run/resolvconf/interface/ 目录中&lt;/li&gt;
&lt;li&gt;resolvconf 使用多个配置文件片段来管理 DNS 信息,配置文件路径包括：
&lt;ul&gt;
&lt;li&gt;/etc/resolvconf/resolv.conf.d/head：内容会添加在动态生成的 /etc/resolv.conf 文件的最开头,通常是注释行（例如，文件生成说明）或管理员希望固定放在前面的配置&lt;/li&gt;
&lt;li&gt;/etc/resolvconf/resolv.conf.d/base：基本 DNS 信息,配置一些静态的dns,始终会添加到resolv.conf; resolvconf收集到的动态信息会跟base文件中的配置进行merge;如:base中配置了 &lt;code&gt;search a.b.c&lt;/code&gt;,收集到的动态信息是 &lt;code&gt;search x.y.z&lt;/code&gt;,最终结果就是:&lt;code&gt;search a.b.c x.y.z&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;/etc/resolvconf/resolv.conf.d/tail：尾部内容;可以用来加入一些额外的选项，比如 options inet6;如果不需要任何追加内容，可以将该文件留空。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;可以直接在 /etc/network/interfaces 中配置 dns-nameservers 和 dns-search, 在resolvconf的帮助下会同步到 resolv.conf&lt;/li&gt;
&lt;li&gt;文档目录: /usr/share/doc/resolvconf/README.gz     gunzip README.gz&lt;/li&gt;
&lt;li&gt;resolvconf 和 systemd-resolved 两个软件冲突,安装一个就会卸载另一个; systemd-resolved的功能比resolvconf更多,如mdns和dns缓存等,但我不会用,也没必要用&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;a原始配置的解释&#34;&gt;
    &lt;a href=&#34;#a%e5%8e%9f%e5%a7%8b%e9%85%8d%e7%bd%ae%e7%9a%84%e8%a7%a3%e9%87%8a&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    a、原始配置的解释
&lt;/h4&gt;&lt;p&gt;1、运行 cat /etc/resolv.conf ; 显示:&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;domain localdomain
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;search localdomain
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nameserver 172.16.106.2&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;一&lt;/code&gt;、找到这个 &lt;code&gt;nameserver&lt;/code&gt;, 写在后面 &lt;code&gt;/etc/network/interfaces&lt;/code&gt; 中的 &lt;code&gt;gateway&lt;/code&gt;;  nameserver就是使用的dns服务器, 在vmware虚拟机中,这个默认被配置为nat的网关ip,用来转发流量和dns解析; 但是也不是必须与 网关ip相同, 可以配置成多个不同的dns, 写多行 nameserver, 配置的dns中就算没有网关ip, nat的外网访问依然还是保持不变, 所以网关是网关,dns是dns,两个不同的功能和概念;&lt;/li&gt;
&lt;li&gt;虚拟机linux中的网关ip虽然默认没有文件配置(除非配置静态ip),但可以执行命令: &lt;code&gt;ip route | grep default&lt;/code&gt; 可以查看到&lt;/li&gt;
&lt;li&gt;在 VMware 创建的 NAT 模式的虚拟机中，虚拟机的网关 IP 并不是直接存储在虚拟机的配置文件(不在linux虚拟机的文件系统中)中，而是通过 VMware 的网络配置文件定义，并由虚拟机通过 DHCP 或静态配置使用,可能会存放在宿主机 &lt;code&gt;/Library/Preferences/VMware Fusion/networking&lt;/code&gt; (VNET_8_HOSTONLY_SUBNET)中,这是标识了nat能用的子网段,以 &lt;code&gt;.0&lt;/code&gt; 结尾,但是网关ip用的是以 &lt;code&gt;.2&lt;/code&gt; 结尾的;&lt;/li&gt;
&lt;li&gt;在 &lt;code&gt;/Library/Preferences/VMware Fusion/vmnet8/nat.conf&lt;/code&gt; 中有下面的这个配置,也标识了网关ip;注意这是纯nat模式,和自定义模式还不相同;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# NAT gateway address&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ip&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 172.16.12.2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;netmask&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 255.255.255.0&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;mac上vmware fusion自定义模式实际上是桥接, 在 &lt;code&gt;/Library/Preferences/VMware Fusion/networking&lt;/code&gt; 中的 &lt;code&gt;VNET_2_HOSTONLY_SUBNET&lt;/code&gt; 中有显示;在 &lt;code&gt;/Library/Preferences/VMware Fusion/vmnet2/nat.conf&lt;/code&gt; 中也有如下表示(&lt;code&gt;vmnet2&lt;/code&gt; 也在软件中显示的我的自定网络的名字):&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# NAT gateway address&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ip&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 172.16.106.2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;netmask&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 255.255.255.0&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;nat 模式的网关 ip  &lt;code&gt;xxx.xxx.xxx.2&lt;/code&gt; 通常以 &lt;code&gt;.2&lt;/code&gt; 结尾, 因为约定俗成; &lt;code&gt;.0&lt;/code&gt; 是一个网段的网络标识地址，表示整个子网常表示子网本身，不能分配给设备或服务使用; &lt;code&gt;.1 &lt;/code&gt; 通常用于路由器,在家庭路由器中，192.168.1.1 是常见的默认网关,虽然 VMware 可以选择使用 .1，但它通常会避开这个地址，以避免与一些软件或网络设备的默认配置产生冲突&lt;/li&gt;
&lt;li&gt;&lt;code&gt;二&lt;/code&gt;、这个文件就是被修改,重启后也会恢复原样; 若要进行配置,需要修改后执行 &lt;code&gt;chattr +i /etc/resolv.conf&lt;/code&gt; 变为只读的;恢复: &lt;code&gt;chattr -i /etc/resolv.conf&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;三&lt;/code&gt;、&lt;code&gt;domain&lt;/code&gt; 和 &lt;code&gt;search&lt;/code&gt; 最好保持不变, 就用 localdomain, 更安全, 因为外网中没有localdomain的顶级域名&lt;/li&gt;
&lt;li&gt;localdomain 就是个默认的域名占位符,假如我 &lt;code&gt;ping aaa&lt;/code&gt;, 他会尝试去dns中查找 &lt;code&gt;aaa&lt;/code&gt; 和 &lt;code&gt;aaa.localdomain&lt;/code&gt;; 可以删除localdomain,替换为自己要用的&lt;/li&gt;
&lt;li&gt;search 就是一个搜索域, 用于补全主机名,假如配置成 &lt;code&gt;com&lt;/code&gt;, 我执行 &lt;code&gt;ping baidu&lt;/code&gt; 就能直接ping成功; 但是不能和本地hosts文件配合使用,如在hosts中配置: &lt;code&gt;1.1.1.1 a.com&lt;/code&gt; ; 则我执行 &lt;code&gt;ping a&lt;/code&gt;, 是不会成功的, 因为会直接去dns服务器中查找(nat模式虚拟中就是那个网关ip),网络上并没有 a.com 这个地址,所以不会成功,这种只能 &lt;code&gt;ping a.com&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;domain&lt;/code&gt; 和 &lt;code&gt;search&lt;/code&gt; 功能相同,原理也相同; 但是1、search若配置后, 会覆盖domain 的配置; 2、search 支持多个 以空格分开, domain 仅支持一个&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2、运行 cat /etc/network/interfaces ; 显示:&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# This file describes the network interfaces available on your system&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# and how to activate them. For more information, see interfaces(5).&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; /etc/network/interfaces.d/*
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# The loopback network interface&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;auto lo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;iface lo inet loopback
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# The primary network interface&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;allow-hotplug ens160
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;iface ens160 inet dhcp&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;详情见下面修改静态ip的示例&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;b静态ipdns配置&#34;&gt;
    &lt;a href=&#34;#b%e9%9d%99%e6%80%81ipdns%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    b、静态ip+dns配置
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ens160&lt;/code&gt; :网络接口名称,必须使用原本默认的, 但是有些老linux使用的是 &lt;code&gt;eth0&lt;/code&gt;,所以需要修改前预先查看当前系统使用的 &lt;code&gt;网络接口名称&lt;/code&gt;; 在后面修改的配置文件示例作出相应的修改才行; 原来用的哪个,修改后也应该用哪个;可以用 &lt;code&gt;ip link show&lt;/code&gt; 或者 &lt;code&gt;ifconfig&lt;/code&gt;, 或者直接看 /etc/network/interfaces文件&lt;/li&gt;
&lt;li&gt;如果要配置静态ip,那就必须要配置gateway(网关)ip,否则不能连接外网;局域网使用是可以的&lt;/li&gt;
&lt;li&gt;为什么默认不需要配置?因为默认网络是动态ip,是通过dhcp自动发现的,通过dhcp,linux就知道了该找哪个网关ip;静态ip则不然;&lt;/li&gt;
&lt;li&gt;桥接模式也需要配置网关ip(通常为路由器ip),默认使用动态ip时,也是用dhcp自动发现的;&lt;/li&gt;
&lt;li&gt;若要配置dns,则最好在/etc/network/interfaces中配置,虽然/etc/resolv.conf中也能配置,但是重启就会没了;而/etc/network/interfaces中配置的dns则会自动同步到resolv.conf,重启也不会消失&lt;/li&gt;
&lt;li&gt;lo 的两行是非必须的,是回环地址(127.0.0.1),可以不用显式配置,linux会在开机后自动启用lo,可以用 &lt;code&gt;ping 127.0.0.1&lt;/code&gt; 来检测&lt;/li&gt;
&lt;li&gt;也可以设置: dns-search com  # 设置DNS搜索域 ,见上面的 resolv.conf配置详解(就是这个resolv.conf里的 search, 会自动同步到resolv.conf)&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp /etc/network/interfaces /etc/network/interfaces.bak
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; /etc/network/interfaces &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# This file describes the network interfaces available on your system
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# and how to activate them. For more information, see interfaces(5).
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;source /etc/network/interfaces.d/*
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# The loopback network interface
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;auto lo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;iface lo inet loopback
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# The primary network interface
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# allow-hotplug ens160
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# iface ens160 inet dhcp
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;auto ens160
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;iface ens160 inet static
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    address 172.16.106.12
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    netmask 255.255.255.0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    gateway 172.16.106.2
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    dns-nameservers 223.5.5.5 119.29.29.29 8.8.8.8
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat /etc/network/interfaces &lt;span class=&#34;c1&#34;&gt;#确认一下&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl restart networking.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ip addr
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;######### 安装resolvconf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install resolvconf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;reboot
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl status resolvconf.service &lt;span class=&#34;c1&#34;&gt;# 服务状态为 active (exited)，说明它已经成功运行并退出（这类服务是一次性任务，在启动后完成工作便退出）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat /etc/resolv.conf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls -l /etc/resolv.conf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl start resolvconf.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl stop resolvconf.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; resolvconf.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl disable resolvconf.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat /etc/resolv.conf &lt;span class=&#34;c1&#34;&gt;# 查看dns是否被自动更改&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls -l /etc/resolv.conf &lt;span class=&#34;c1&#34;&gt;# 查看是否为软链接&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 关闭 quanx&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ping www.baidu.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget www.baidu.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm index.html
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dig www.baidu.com &lt;span class=&#34;c1&#34;&gt;# SERVER: 223.5.5.5#53(223.5.5.5) (UDP)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nslookup -debug www.baidu.com  &lt;span class=&#34;c1&#34;&gt;# Server:223.5.5.5&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;c配置默认语言&#34;&gt;
    &lt;a href=&#34;#c%e9%85%8d%e7%bd%ae%e9%bb%98%e8%ae%a4%e8%af%ad%e8%a8%80&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    c、配置默认语言
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;尽管在安装时已经选择了默认语言(即安装的第一步,选择安装程序的显示语言,这个设置也会成为安装后系统的默认语言)&lt;/li&gt;
&lt;li&gt;在系统安装完成后,可以通过命令重新配置; 如果安装时选择的英文, 安装后用命令把中文加为第二个语言,但是默认首选还是英文,只是添加了个中文环境信息,可以给其他软件使用;如: &lt;code&gt;tldr -L zh tree&lt;/code&gt; ,这个命令,如果不添加中文语言环境的支持,是不会显示中文的&lt;/li&gt;
&lt;li&gt;默认 &lt;code&gt;tty界面(非远程连接、非图形化界面的系统自己的操作界面,那个黑窗口)&lt;/code&gt; 无论怎么配置,通常也是不支持中文的,除非安装 &lt;code&gt;fbterm&lt;/code&gt; 这个第三方的tty&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 鼠标滚轮可以快速滚动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg-reconfigure locales
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 选中 en_US.UTF-8 和 zh_CN.UTF-8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 用空格选中(多选),上下箭头移动, tab键移至 [ok] 回车确认; 提示选择 en_US.UTF-8 为首选默认语言,选择后回车确定&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 重新登录或重启&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;locale     &lt;span class=&#34;c1&#34;&gt;# 查看目前系统所使用的语言环境&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;locale -a     &lt;span class=&#34;c1&#34;&gt;# 查看系统已安装的所有语言&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 环境变量有:   (默认都是 &amp;#34;en_US.UTF-8&amp;#34; ; 若修改默认的语言为中文则变为:   &amp;#34;zn_CN.UTF-8&amp;#34;  )&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LANG         &lt;span class=&#34;c1&#34;&gt;# 系统的主要语言和地区设置，影响所有未单独设置的 LC_* 变量。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LANGUAGE     &lt;span class=&#34;c1&#34;&gt;# 定义语言优先顺序，主要用于翻译系统消息 (LC_MESSAGES)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_ALL       &lt;span class=&#34;c1&#34;&gt;# 强制覆盖所有 LC_* 变量的值，优先级最高，通常用于调试。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_CTYPE     &lt;span class=&#34;c1&#34;&gt;# 定义字符分类和编码规则，影响字符输入和显示 (如 UTF-8)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_NUMERIC   &lt;span class=&#34;c1&#34;&gt;# 控制数值格式，例如小数点符号、分组符号等。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_TIME      &lt;span class=&#34;c1&#34;&gt;# 定义日期和时间格式 (如美式日期 vs 欧式日期)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_COLLATE   &lt;span class=&#34;c1&#34;&gt;# 控制字符串比较和排序规则，影响文件名排序等。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_MONETARY  &lt;span class=&#34;c1&#34;&gt;# 控制货币格式，例如货币符号、千分位分隔符等。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_MESSAGES  &lt;span class=&#34;c1&#34;&gt;# 定义系统消息的语言 (如错误提示、确认信息等)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_PAPER     &lt;span class=&#34;c1&#34;&gt;# 控制默认纸张尺寸 (如 Letter vs A4)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_NAME      &lt;span class=&#34;c1&#34;&gt;# 定义人名的显示格式 (如姓氏在前或名字在前)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_ADDRESS   &lt;span class=&#34;c1&#34;&gt;# 控制地址格式和显示规则。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_TELEPHONE &lt;span class=&#34;c1&#34;&gt;# 定义电话号码的格式 (如是否显示国家代码)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_MEASUREMENT &lt;span class=&#34;c1&#34;&gt;# 控制度量单位 (如公制 vs 英制)。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;LC_IDENTIFICATION &lt;span class=&#34;c1&#34;&gt;# 描述语言环境的特定信息，通常不直接影响用户体验。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 不需要自己配置环境变量,直接使用系统默认的体验最佳&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;d-重新配置键盘布局&#34;&gt;
    &lt;a href=&#34;#d-%e9%87%8d%e6%96%b0%e9%85%8d%e7%bd%ae%e9%94%ae%e7%9b%98%e5%b8%83%e5%b1%80&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    d 、重新配置键盘布局
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;装好系统后,默认不用修改&lt;/li&gt;
&lt;li&gt;键盘布局就是,在 tty 界面,或者linux自己的图形化界面的键盘映射;其目的是让操作系统正确识别和映射键盘上的按键到字符或功能;&lt;/li&gt;
&lt;li&gt;按键 Shift+2 输出 &lt;code&gt;@&lt;/code&gt;（在美式键盘中）还是 &lt;code&gt;&amp;quot;&lt;/code&gt; (在英式键盘中)某些键盘布局会增加对语言特定符号的支持，比如法语的 é 或德语的 ß&lt;/li&gt;
&lt;li&gt;某些布局支持 AltGr（右 Alt 键）的特殊功能，用于输入更多字符&lt;/li&gt;
&lt;li&gt;但是远程连接的话就没这个说法了,用的是我本地的电脑自己的键盘映射,传给linux的就是实际的字符信息了;&lt;/li&gt;
&lt;li&gt;最佳选择: &lt;code&gt;美式键盘（US Layout）：标准 QWERTY 布局，符号按键位置国际通用&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;中国市场的键盘以美式 QWERTY 布局为主,硬件上没有区别,中文输入完全依赖系统输入法&lt;/li&gt;
&lt;li&gt;默认 &lt;code&gt;tty界面(非远程连接、非图形化界面的系统自己的操作界面,那个黑窗口)&lt;/code&gt; 无论怎么配置,通常也是不支持中文的,除非安装 &lt;code&gt;fbterm&lt;/code&gt; 这个第三方的tty&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dpkg-reconfigure keyboard-configuration
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;service keyboard-setup restart&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;e安装-sudo&#34;&gt;
    &lt;a href=&#34;#e%e5%ae%89%e8%a3%85-sudo&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    e、安装 sudo
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sudo命令需要用户需要输入自己的密码进行身份验证，而不是 root 密码。这是 sudo 的一大优点，可以避免暴露 root 密码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list sudo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls /usr/sbin/sudo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install sudo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/usr/sbin/usermod -aG sudo &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;whoami&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;#将helq用户加入sudo的用户组; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# -a (append)：表示将用户添加到新的组时，保留其现有的组。如果不加 -a，用户将会退出其他组，仅加入指定的组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# -G(group)：后面跟一组组名，用逗号分隔，表示要添加用户的目标组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;groups helq &lt;span class=&#34;c1&#34;&gt;#确认用户已被添加到 sudo 组;输出中应该包含 sudo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 重新登录使更改生效&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;aaa&amp;#34;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;#测试&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;f前置软件安装&#34;&gt;
    &lt;a href=&#34;#f%e5%89%8d%e7%bd%ae%e8%bd%af%e4%bb%b6%e5%ae%89%e8%a3%85&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    f、前置软件安装
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; apt-get update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install -y net-tools build-essential openssh-server curl unzip zip tree cmake jq
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装zsh&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt install zsh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zsh --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chsh -s &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;which zsh&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 设置 zsh 为 root用户的 默认 shell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;reboot &lt;span class=&#34;c1&#34;&gt;# 重启&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chsh -s &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;which zsh&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 重新为普通用户设置&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;f允许root直接登录&#34;&gt;
    &lt;a href=&#34;#f%e5%85%81%e8%ae%b8root%e7%9b%b4%e6%8e%a5%e7%99%bb%e5%bd%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    f、允许root直接登录
&lt;/h4&gt;&lt;p&gt;默认情况下,是不允许 root直接登录的即: &lt;code&gt;ssh -p 22 root@172.16.106.12&lt;/code&gt; 会失败&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;PermitRootLogin yes&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sudo tee -a /etc/ssh/sshd_config &amp;gt;/dev/null &lt;span class=&#34;c1&#34;&gt;# 解决方式, 重启启动虚拟机就可以了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;reboot &lt;span class=&#34;c1&#34;&gt;# 重启&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;g-虚拟机克隆的情况&#34;&gt;
    &lt;a href=&#34;#g-%e8%99%9a%e6%8b%9f%e6%9c%ba%e5%85%8b%e9%9a%86%e7%9a%84%e6%83%85%e5%86%b5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    g 、虚拟机克隆的情况
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 执行下面这个命令,重新配置静态ip dns 和 hostname&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;wget -q -O- --header=&amp;#39;Cache-Control: no-cache&amp;#39; \&amp;#34;https://raw.githubusercontent.com/loganoxo/Config/master/linux/install/pre.sh?&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;date +%s&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;\&amp;#34; | bash -s -- \&amp;#34;run\&amp;#34; \&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;whoami&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;\&amp;#34; \&amp;#34;clone\&amp;#34; &amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;################# 重新生成 ssh host key ##############################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 因为 A、B 和 C 虚拟机的 SSH 主机密钥是克隆时复制过来的，三台虚拟机的密钥相同，所以 SSH 客户端会认为它们是同一台主机。  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ssh连接这三台机器时,本地~/.ssh/known_hosts 文件中这三台机器的指纹完全相同;  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 当你尝试通过 SSH 连接到主机时，SSH 客户端会检查该主机的指纹是否与之前记录的匹配。如果三台虚拟机的指纹相同，当你切换连接到另一个虚拟机时，SSH 客户端会认为主机身份可能被篡改，提示警告  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 主机指纹的目的是确保客户端连接到正确的服务器。如果三台虚拟机的指纹相同，客户端无法区分它们。这可能会带来以下问题：  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   •  中间人攻击更容易成功，因为客户端无法验证主机的唯一性。  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   •  如果某台虚拟机被攻破，攻击者可能利用相同的指纹冒充其他虚拟机  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 管理混乱: 在使用工具（如 Ansible、SSH 配置文件）管理多台主机时，相同的指纹可能导致配置错误或意外连接到错误的主机  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 尽量为每台虚拟机生成唯一的 SSH 主机密钥，确保指纹唯一性，以避免潜在问题并提高系统安全性。 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 在 克隆出来的虚拟机中执行:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rm -f /etc/ssh/ssh_host_*
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl restart ssh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo reboot
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ssh-keygen: 用于生成 SSH 密钥的工具; -t rsa: 指定生成密钥的类型为 RSA。RSA 是一种常用的公钥算法  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# -f /etc/ssh/ssh_host_rsa_key : 指定生成的密钥文件的路径和文件名; 公钥会自动生成在相同路径，文件名为 /etc/ssh/ssh_host_rsa_key.pub ; 私钥存储在同目录 /etc/ssh/ssh_host_rsa_key# -N &amp;#34;&amp;#34;   : 双引号不能去掉; 设置密钥的密码为空;空密码适用于 SSH 主机密钥，因为它们需要在没有人工干预的情况下由 SSH 服务自动使用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;############## 客户端中需要把之前在 ~/.ssh/known_hosts 中生成的 ip+指纹 删除&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh-keygen -R &amp;lt;VM Ip&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh-keygen -R &lt;span class=&#34;s2&#34;&gt;&amp;#34;172.16.106.110&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh-keygen -R &lt;span class=&#34;s2&#34;&gt;&amp;#34;172.16.106.120&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh-keygen -R &lt;span class=&#34;s2&#34;&gt;&amp;#34;172.16.106.130&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat ~/.ssh/known_hosts
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 重新用 SSH 连接; 会重新提示接受新的指纹&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h1 id=&#34;三以下配置可以用脚本执行&#34;&gt;
    &lt;a href=&#34;#%e4%b8%89%e4%bb%a5%e4%b8%8b%e9%85%8d%e7%bd%ae%e5%8f%af%e4%bb%a5%e7%94%a8%e8%84%9a%e6%9c%ac%e6%89%a7%e8%a1%8c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    三、以下配置可以用脚本执行
&lt;/h1&gt;&lt;h3 id=&#34;1安装shell插件&#34;&gt;
    &lt;a href=&#34;#1%e5%ae%89%e8%a3%85shell%e6%8f%92%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1、安装shell插件
&lt;/h3&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su helq
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 git&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install git  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 ohmyzsh&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sh -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/zsh-users/zsh-autosuggestions &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;/plugins/zsh-autosuggestions  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/zsh-users/zsh-syntax-highlighting.git &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;/plugins/zsh-syntax-highlighting
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/.zshrc.pre-oh-my-zsh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 ohmybash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bash -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/.bashrc.omb-backup-*
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 starship&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -sS https://starship.rs/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sh&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;2环境搭建&#34;&gt;
    &lt;a href=&#34;#2%e7%8e%af%e5%a2%83%e6%90%ad%e5%bb%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2、环境搭建
&lt;/h3&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su helq
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;:/usr/sbin/                                &lt;span class=&#34;c1&#34;&gt;# 临时解决debian系统的默认PATH没有sbin的问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# git&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ssh-github 私钥&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;### 可选-上传 ~/.ssh/ 下的github私钥 到 虚拟机&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh -T git@github.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 若有权限太宽泛的问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod &lt;span class=&#34;m&#34;&gt;600&lt;/span&gt; /home/helq/.ssh/loganoxo-GitHub
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh -T git@github.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# eval &amp;#34;$(ssh-agent -s)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ~
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.aria2 ~/.config ~/.ssh ~/.shell_bak ~/software ~/Data ~/.local/bin ~/.config/navi ~/.zoxide ~/.undodir ~/.vim ~/Temp ~/share
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/loganoxo/Config.git ~/Data/Config
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.bashrc ~/.shell_bak/ &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; mv ~/.profile ~/.shell_bak/ &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; mv ~/.zshrc ~/.shell_bak/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bash ~/Data/Config/my-ln.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo bash ~/Data/Config/linux/for_root/create_root_files.sh &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/Data/Config/linux/for_root/template.sh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ln -sf ~/Data/Config/vim/settings.vim /root/.vimrc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/.zshrc&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;3安装必备工具&#34;&gt;
    &lt;a href=&#34;#3%e5%ae%89%e8%a3%85%e5%bf%85%e5%a4%87%e5%b7%a5%e5%85%b7&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    3、安装必备工具
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;debian等linux系统,若是arm架构的,则不推荐装 homebrew(linuxbrew),有很多包没有通用二进制文件,只能在本地编译,很慢又容易出依赖的问题,不友好&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装防火墙&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install ufw -y
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw status &lt;span class=&#34;c1&#34;&gt;#inactive，说明 UFW 未启用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 默认情况下，UFW 会阻止所有传入的网络流量，除非明确允许。例如，如果没有添加允许 SSH 的规则，远程登录将会被拒绝;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 默认情况下，UFW 会允许所有传出的网络流量，比如从本机访问互联网的请求&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# UFW 的 allow 命令默认允许的是传入流量; ufw allow ssh 等效于 ufw allow in ssh ;  传出的用法如: ufw allow out 53 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw disable &lt;span class=&#34;c1&#34;&gt;#禁用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw default deny incoming &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo ufw default allow outgoing
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# enable之前先开放 ssh 端口, 否则远程连接会断开; 允许SSH（端口 22） HTTP（端口 80） HTTPS（端口 443）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow ssh &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo ufw allow http &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo ufw allow https &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo ufw allow &lt;span class=&#34;m&#34;&gt;80&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow 6000:6007/tcp &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo ufw allow 6000:6007/udp &lt;span class=&#34;c1&#34;&gt;#允许使用端口 6000-6007 的 连接&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw limit ssh &lt;span class=&#34;c1&#34;&gt;# 限制ssh登录尝试的连接次数,防止暴力破解密码;每个ip每30秒最多尝试6次&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;#启用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw status verbose &lt;span class=&#34;c1&#34;&gt;#查看所有端口开放情况&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw reset &lt;span class=&#34;c1&#34;&gt;#清空所有规则并恢复默认配置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw delete allow ssh &lt;span class=&#34;c1&#34;&gt;#删除某个规则&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#根据规则编号删除&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw status numbered
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw delete &amp;lt;编号&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 nginx&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install nginx -y
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl list-unit-files --state&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;enabled &lt;span class=&#34;c1&#34;&gt;#查看所有自启动的软件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl disable nginx.service &lt;span class=&#34;c1&#34;&gt;#禁止nginx开机自启&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status nginx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl stop nginx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl start nginx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status nginx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:80 &lt;span class=&#34;c1&#34;&gt;#测试&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 在本地宿主机访问 http://172.16.106.12 ; http://127.0.0.1:12382/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 go&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install golang-go
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;go version&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;4命令行工具&#34;&gt;
    &lt;a href=&#34;#4%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%b7%a5%e5%85%b7&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    4、命令行工具
&lt;/h3&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-1&#34;&gt;  1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-2&#34;&gt;  2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-3&#34;&gt;  3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-4&#34;&gt;  4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-5&#34;&gt;  5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-6&#34;&gt;  6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-7&#34;&gt;  7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-8&#34;&gt;  8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-9&#34;&gt;  9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-10&#34;&gt; 10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-11&#34;&gt; 11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-12&#34;&gt; 12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-13&#34;&gt; 13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-14&#34;&gt; 14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-15&#34;&gt; 15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-16&#34;&gt; 16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-17&#34;&gt; 17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-18&#34;&gt; 18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-19&#34;&gt; 19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-20&#34;&gt; 20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-21&#34;&gt; 21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-22&#34;&gt; 22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-23&#34;&gt; 23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-24&#34;&gt; 24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-25&#34;&gt; 25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-26&#34;&gt; 26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-27&#34;&gt; 27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-28&#34;&gt; 28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-29&#34;&gt; 29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-30&#34;&gt; 30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-31&#34;&gt; 31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-32&#34;&gt; 32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-33&#34;&gt; 33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-34&#34;&gt; 34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-35&#34;&gt; 35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-36&#34;&gt; 36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-37&#34;&gt; 37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-38&#34;&gt; 38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-39&#34;&gt; 39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-40&#34;&gt; 40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-41&#34;&gt; 41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-42&#34;&gt; 42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-43&#34;&gt; 43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-44&#34;&gt; 44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-45&#34;&gt; 45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-46&#34;&gt; 46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-47&#34;&gt; 47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-48&#34;&gt; 48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-49&#34;&gt; 49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-50&#34;&gt; 50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-51&#34;&gt; 51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-52&#34;&gt; 52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-53&#34;&gt; 53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-54&#34;&gt; 54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-55&#34;&gt; 55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-56&#34;&gt; 56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-57&#34;&gt; 57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-58&#34;&gt; 58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-59&#34;&gt; 59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-60&#34;&gt; 60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-61&#34;&gt; 61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-62&#34;&gt; 62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-63&#34;&gt; 63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-64&#34;&gt; 64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-65&#34;&gt; 65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-66&#34;&gt; 66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-67&#34;&gt; 67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-68&#34;&gt; 68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-69&#34;&gt; 69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-70&#34;&gt; 70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-71&#34;&gt; 71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-72&#34;&gt; 72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-73&#34;&gt; 73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-74&#34;&gt; 74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-75&#34;&gt; 75&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-76&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-76&#34;&gt; 76&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-77&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-77&#34;&gt; 77&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-78&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-78&#34;&gt; 78&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-79&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-79&#34;&gt; 79&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-80&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-80&#34;&gt; 80&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-81&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-81&#34;&gt; 81&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-82&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-82&#34;&gt; 82&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-83&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-83&#34;&gt; 83&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-84&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-84&#34;&gt; 84&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-85&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-85&#34;&gt; 85&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-86&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-86&#34;&gt; 86&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-87&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-87&#34;&gt; 87&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-88&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-88&#34;&gt; 88&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-89&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-89&#34;&gt; 89&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-90&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-90&#34;&gt; 90&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-91&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-91&#34;&gt; 91&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-92&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-92&#34;&gt; 92&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-93&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-93&#34;&gt; 93&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-94&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-94&#34;&gt; 94&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-95&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-95&#34;&gt; 95&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-96&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-96&#34;&gt; 96&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-97&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-97&#34;&gt; 97&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-98&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-98&#34;&gt; 98&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-99&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-99&#34;&gt; 99&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-100&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-100&#34;&gt;100&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-101&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-101&#34;&gt;101&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-102&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-102&#34;&gt;102&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-103&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-103&#34;&gt;103&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-104&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-104&#34;&gt;104&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-105&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-105&#34;&gt;105&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-106&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-106&#34;&gt;106&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-107&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-107&#34;&gt;107&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-108&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-108&#34;&gt;108&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-109&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-109&#34;&gt;109&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-110&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-110&#34;&gt;110&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-111&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-111&#34;&gt;111&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-112&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-112&#34;&gt;112&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-113&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-113&#34;&gt;113&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-114&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-114&#34;&gt;114&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-115&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-115&#34;&gt;115&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-116&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-116&#34;&gt;116&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-117&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-117&#34;&gt;117&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-118&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-118&#34;&gt;118&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-119&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-119&#34;&gt;119&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-120&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-120&#34;&gt;120&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-121&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-121&#34;&gt;121&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-122&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-122&#34;&gt;122&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-123&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-123&#34;&gt;123&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-124&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-124&#34;&gt;124&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-125&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-125&#34;&gt;125&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-126&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-126&#34;&gt;126&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-127&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-127&#34;&gt;127&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-128&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-128&#34;&gt;128&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-129&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-129&#34;&gt;129&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-130&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-130&#34;&gt;130&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-131&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-131&#34;&gt;131&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-132&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-132&#34;&gt;132&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-133&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-133&#34;&gt;133&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-134&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-134&#34;&gt;134&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-135&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-135&#34;&gt;135&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-136&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-136&#34;&gt;136&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-137&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-137&#34;&gt;137&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-138&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-138&#34;&gt;138&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-139&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-139&#34;&gt;139&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-140&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-140&#34;&gt;140&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-141&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-141&#34;&gt;141&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-142&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-142&#34;&gt;142&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-143&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-143&#34;&gt;143&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-144&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-144&#34;&gt;144&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-145&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-145&#34;&gt;145&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-146&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-146&#34;&gt;146&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-147&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-147&#34;&gt;147&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-148&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-148&#34;&gt;148&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-149&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-149&#34;&gt;149&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-150&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-150&#34;&gt;150&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-151&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-151&#34;&gt;151&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-152&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-152&#34;&gt;152&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-153&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-153&#34;&gt;153&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-154&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-154&#34;&gt;154&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-155&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-155&#34;&gt;155&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-156&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-156&#34;&gt;156&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-157&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-157&#34;&gt;157&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-158&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-158&#34;&gt;158&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-159&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-159&#34;&gt;159&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-160&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-160&#34;&gt;160&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-161&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-161&#34;&gt;161&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-162&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-162&#34;&gt;162&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-163&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-163&#34;&gt;163&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-164&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-164&#34;&gt;164&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-165&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-165&#34;&gt;165&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-166&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-166&#34;&gt;166&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-167&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-167&#34;&gt;167&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-168&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-168&#34;&gt;168&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-169&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-169&#34;&gt;169&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-170&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-170&#34;&gt;170&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-171&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-171&#34;&gt;171&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-172&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-172&#34;&gt;172&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-173&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-173&#34;&gt;173&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-174&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-174&#34;&gt;174&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-175&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-175&#34;&gt;175&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-176&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-176&#34;&gt;176&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-177&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-177&#34;&gt;177&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-178&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-178&#34;&gt;178&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-179&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-179&#34;&gt;179&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-180&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-180&#34;&gt;180&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-181&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-181&#34;&gt;181&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-182&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-182&#34;&gt;182&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-183&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-183&#34;&gt;183&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-184&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-184&#34;&gt;184&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-185&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-185&#34;&gt;185&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-186&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-186&#34;&gt;186&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-187&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-187&#34;&gt;187&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-188&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-188&#34;&gt;188&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-189&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-189&#34;&gt;189&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-190&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-190&#34;&gt;190&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-191&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-191&#34;&gt;191&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-192&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-192&#34;&gt;192&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-193&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-193&#34;&gt;193&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-194&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-194&#34;&gt;194&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-195&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-195&#34;&gt;195&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-196&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-196&#34;&gt;196&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-197&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-197&#34;&gt;197&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-198&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-198&#34;&gt;198&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-199&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-199&#34;&gt;199&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-200&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-200&#34;&gt;200&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-201&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-201&#34;&gt;201&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-202&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-202&#34;&gt;202&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-203&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-203&#34;&gt;203&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-204&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-204&#34;&gt;204&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-205&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-205&#34;&gt;205&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-206&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-206&#34;&gt;206&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-207&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-207&#34;&gt;207&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-208&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-208&#34;&gt;208&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-209&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-209&#34;&gt;209&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-210&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-210&#34;&gt;210&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-211&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-211&#34;&gt;211&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-212&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-212&#34;&gt;212&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-213&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-213&#34;&gt;213&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-214&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-214&#34;&gt;214&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-215&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-215&#34;&gt;215&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-216&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-216&#34;&gt;216&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-217&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-217&#34;&gt;217&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-218&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-218&#34;&gt;218&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-219&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-219&#34;&gt;219&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-220&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-220&#34;&gt;220&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-221&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-221&#34;&gt;221&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-222&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-222&#34;&gt;222&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-223&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-223&#34;&gt;223&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-224&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-224&#34;&gt;224&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-225&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-225&#34;&gt;225&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-226&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-226&#34;&gt;226&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-227&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-227&#34;&gt;227&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-228&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-228&#34;&gt;228&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-229&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-229&#34;&gt;229&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-230&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-230&#34;&gt;230&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-231&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-231&#34;&gt;231&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-232&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-232&#34;&gt;232&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-233&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-233&#34;&gt;233&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-234&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-234&#34;&gt;234&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-235&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-235&#34;&gt;235&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-236&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-236&#34;&gt;236&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-237&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-237&#34;&gt;237&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-238&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-238&#34;&gt;238&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-239&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-239&#34;&gt;239&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-240&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-240&#34;&gt;240&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-241&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-241&#34;&gt;241&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-242&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-242&#34;&gt;242&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-243&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-243&#34;&gt;243&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-244&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-244&#34;&gt;244&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-245&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-245&#34;&gt;245&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-246&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-246&#34;&gt;246&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-247&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-247&#34;&gt;247&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-248&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-248&#34;&gt;248&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-249&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-249&#34;&gt;249&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-250&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-250&#34;&gt;250&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-251&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-251&#34;&gt;251&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-252&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-252&#34;&gt;252&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-253&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-253&#34;&gt;253&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-254&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-254&#34;&gt;254&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-255&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-255&#34;&gt;255&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-256&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-256&#34;&gt;256&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-257&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-257&#34;&gt;257&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-258&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-258&#34;&gt;258&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-259&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-259&#34;&gt;259&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-260&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-260&#34;&gt;260&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-261&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-261&#34;&gt;261&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-262&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-262&#34;&gt;262&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-263&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-263&#34;&gt;263&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-264&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-264&#34;&gt;264&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-265&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-265&#34;&gt;265&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-266&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-266&#34;&gt;266&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-267&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-267&#34;&gt;267&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-268&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-268&#34;&gt;268&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-269&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-269&#34;&gt;269&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-270&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-270&#34;&gt;270&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-271&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-271&#34;&gt;271&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-272&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-272&#34;&gt;272&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-273&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-273&#34;&gt;273&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-274&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-274&#34;&gt;274&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-275&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-275&#34;&gt;275&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-276&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-276&#34;&gt;276&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-277&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-277&#34;&gt;277&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-278&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-278&#34;&gt;278&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-279&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-279&#34;&gt;279&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-280&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-280&#34;&gt;280&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-281&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-281&#34;&gt;281&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-282&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-282&#34;&gt;282&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-283&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-283&#34;&gt;283&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-284&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-284&#34;&gt;284&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-285&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-285&#34;&gt;285&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-286&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-286&#34;&gt;286&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su helq
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 bat&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install bat &lt;span class=&#34;c1&#34;&gt;#这样安装的bat会因为避免名字冲突而让他的命令变为 batcat, 所以需要符号链接&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 切换到普通用户执行:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.local/bin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s /usr/bin/batcat ~/.local/bin/bat
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装fzf&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# sudo apt install fzf #版本太低了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/software  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/junegunn/fzf.git ~/software/fzf  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget -P &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/software/fzf/&amp;#34;&lt;/span&gt; https://github.com/junegunn/fzf/releases/download/v0.56.3/fzf-0.56.3-linux_arm64.tar.gz  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar -xzf ~/software/fzf/fzf-0.56.3-linux_arm64.tar.gz -C ~/software/fzf  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -sf ~/software/fzf/fzf ~/.local/bin/fzf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装fd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install fd-find
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;which fdfind&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; ~/.local/bin/fd
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装zoxide&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.zoxide
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装vim&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/.undodir ~/.vim
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install vim
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fLo ~/.vim/autoload/plug.vim --create-dirs &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 测试 :PlugStatus :PlugInstall  :PlugClean&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -c &lt;span class=&#34;s1&#34;&gt;&amp;#39;:PlugStatus&amp;#39;&lt;/span&gt; -c &lt;span class=&#34;s1&#34;&gt;&amp;#39;:PlugInstall&amp;#39;&lt;/span&gt; -c &lt;span class=&#34;s1&#34;&gt;&amp;#39;:PlugClean&amp;#39;&lt;/span&gt; -c &lt;span class=&#34;s1&#34;&gt;&amp;#39;:qa!&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装sdkman&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -s &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://get.sdkman.io?rcupdate=false&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash &lt;span class=&#34;c1&#34;&gt;#不修改zshrc 和 bashrc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk list java
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 8.0.432.fx-zulu
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;java -XshowSettings:properties -version &lt;span class=&#34;c1&#34;&gt;#查看安装的jdk详细版本信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 11.0.25.fx-zulu
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 17.0.13.fx-zulu
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 17.0.13-zulu
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 17.0.12-oracle &lt;span class=&#34;c1&#34;&gt;#设为默认&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install java 17.0.13-tem
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk default java 17.0.12-oracle
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;java -version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk list maven
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk install maven 3.9.9
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sdk default maven 3.9.9
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 重启虚拟机&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mvn -version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装fnm&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://fnm.vercel.app/install &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash -s -- --skip-shell &lt;span class=&#34;c1&#34;&gt;#不修改zshrc 和 bashrc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s ~/.local/share/fnm/fnm ~/.local/bin/fnm
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# eval &amp;#34;$(fnm completions --shell zsh)&amp;#34; #命令补全,没啥用,就只是补全命令,不会补全当前存在的node版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm -V                             &lt;span class=&#34;c1&#34;&gt;#查看fnm的版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm ls                             &lt;span class=&#34;c1&#34;&gt;#查看本地已安装的nodejs的版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm current                        &lt;span class=&#34;c1&#34;&gt;#打印当前使用的node版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm ls-remote                      &lt;span class=&#34;c1&#34;&gt;#通过网络查看所有已发布的nodejs版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm ls-remote --lts                &lt;span class=&#34;c1&#34;&gt;#通过网络查看所有已发布的长期支持的nodejs版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm ls-remote --sort &amp;lt;SORT&amp;gt;        &lt;span class=&#34;c1&#34;&gt;#默认asc升序,desc为倒序&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm install --lts                  &lt;span class=&#34;c1&#34;&gt;#安装最新的LTS版本,会自动加别名 default, lts-latest&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm install --latest               &lt;span class=&#34;c1&#34;&gt;#安装最新的版本,会自动加别名 latest&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm install v18.3.0              #安装指定的版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm install 17                   #部分版本匹配,从你的部分输入中猜测最新的可用版本,它将安装版本为v17.9.1 的节点&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm use &amp;lt;alias/version&amp;gt;          #在当前shell中临时使用某个版本的node&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm use &lt;span class=&#34;m&#34;&gt;22&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm use lts-latest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm use default
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm default &amp;lt;alias/version&amp;gt;      #将某个版本设为默认版本;即新shell中默认使用的node版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm default lts-latest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm uninstall &amp;lt;alias/version&amp;gt;    #卸载某个版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm 给某node版本起别名,用于让其他命令在使用时,将版本号用别名替换;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm alias [OPTIONS] &amp;lt;alias/version&amp;gt; &amp;lt;NAME&amp;gt;  设置别名; 别名唯一;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 若此次设置的别名 aaa 与其他版本的别名重复,则会自动取消之前的别名,给这个命令里的版本17设置别名 aaa&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm alias 17 aaa &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fnm &lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; lts-latest lts
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm unalias [OPTIONS] &amp;lt;alias_name&amp;gt;  取消别名&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fnm unalias lts&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;which -a npm
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm -g install nrm pm2 prettier yarn yrm
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm list -g
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nrm ls
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nrm use taobao
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装rust&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl --proto &lt;span class=&#34;s1&#34;&gt;&amp;#39;=https&amp;#39;&lt;/span&gt; --tlsv1.2 -sSf https://sh.rustup.rs &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rustc --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装navi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tt
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 方法一,用cargo&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cargo install --locked navi
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 方法二,自己编译,有问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/denisidoro/navi &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; navi
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;make &lt;span class=&#34;nv&#34;&gt;BIN_DIR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/home/helq/.local/bin install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 方法三,用脚本,有问题,在debian上执行不了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;BIN_DIR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/home/helq/.local/bin bash &amp;lt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;curl -sL https://raw.githubusercontent.com/denisidoro/navi/master/scripts/install&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# tldr&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cargo install tealdeer
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tldr --update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tldr bat
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tldr -L zh tree
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# glow&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/software  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget -P &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/software&amp;#34;&lt;/span&gt; https://github.com/charmbracelet/glow/releases/download/v2.0.0/glow_2.0.0_Linux_arm64.tar.gz  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tar xvzf ~/software/glow_2.0.0_Linux_arm64.tar.gz -C &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/software/&amp;#34;&lt;/span&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/software/glow_2.0.0_Linux_arm64 ~/software/glow  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s ~/software/glow/glow ~/.local/bin/glow
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# the_silver_searcher&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install silversearcher-ag
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# trash-cli https://github.com/andreafrancia/trash-cli&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install python3 python3-pip python3-venv
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install trash-cli &lt;span class=&#34;c1&#34;&gt;# 版本很低&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir --parent /.Trash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod a+rw /.Trash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod +t /.Trash   
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# +t 设置粘滞位 (sticky bit) 权限;只有文件或子目录的所有者，或目录本身的所有者（通常是管理员），才能删除或重命名该目录内的内容;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 其他用户即使有写权限，也无法删除非自己拥有的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-cli https://github.com/andreafrancia/trash-cli&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-put   &amp;lt;file/directory&amp;gt;                # trash files and directories.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-empty                                 # 从垃圾箱中删除所有文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-empty &amp;lt;days&amp;gt;                          # 仅删除已删除时间超过 &amp;lt;days&amp;gt; 的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-list | grep &amp;lt;path&amp;gt;                    # list trashed files.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-restore                               # 选择文件进行恢复, 若要覆盖同名文件则 加 --overwrite&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   trash-rm \*.o                               # 从垃圾箱中删除与模式匹配的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   从 home 分区回收的文件将被移动到此处 ~/.local/share/Trash/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# uv 包含了 pipx 的功能  https://docs.astral.sh/uv/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 默认是managed: 最先找uv管理的python,其次找系统python(若此时在conda的某个环境中,conda该环境的python也会被找到),最后才下载;only-managed:只找uv管理的python,没有则下载;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# # 安装选项:https://docs.astral.sh/uv/configuration/installer/#disabling-shell-modifications&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -LsSf https://astral.sh/uv/install.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sh &lt;span class=&#34;c1&#34;&gt;# 默认在 ~/.local/share/uv/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# brew install uv&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;UV_PYTHON_PREFERENCE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;only-managed&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python list
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python install &lt;span class=&#34;c1&#34;&gt;# 默认在 ~/.local/share/uv/python/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python install 3.12
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv python uninstall 3.12
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool list
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool install ruff &lt;span class=&#34;c1&#34;&gt;# 安装命令行工具,默认在 ~/.local/bin/  ~/.local/share/uv/tools/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool install ruff -p 3.12 &lt;span class=&#34;c1&#34;&gt;# 指定安装的命令行工具的虚拟环境中的python版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ruff --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ruff check a.py &lt;span class=&#34;c1&#34;&gt;# 这个命令的功能: 检查python代码是否有问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv tool uninstall ruff
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 命令补全: https://docs.astral.sh/uv/getting-started/installation/#upgrading-uv&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装miniconda (超过200人公司使用收费) 免费替代: https://github.com/conda-forge/miniforge&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://docs.anaconda.com/miniconda/install/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://docs.conda.io/projects/conda/en/stable/user-guide/index.html&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# miniconda3 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 寻找适合的版本 https://repo.anaconda.com/miniconda/   带py的指base环境的python版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;########## mac  也可以用  brew install miniconda&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ~/Temp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh -o ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;shasum -a &lt;span class=&#34;m&#34;&gt;256&lt;/span&gt; ~/Temp/miniconda.sh &lt;span class=&#34;c1&#34;&gt;# 验证文件的 sha256 的值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bash ~/Temp/miniconda.sh &lt;span class=&#34;c1&#34;&gt;# 安装路径与mac同步为 ~/.miniconda3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda init bash zsh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;####### linux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;### 静默安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/Temp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh -O ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bash ~/Temp/miniconda.sh -b -u -p ~/.miniconda3 &lt;span class=&#34;c1&#34;&gt;# -b:不对 shell 脚本进行 PATH 修改,以非交互模式（静默模式）运行安装; -u:如果指定的安装路径（通过 -p）已有 Miniconda 安装，它会更新而不是报错或覆盖安装; -p: 指定安装路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;### 按照提示安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/Temp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh -O ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bash ~/Temp/miniconda.sh &lt;span class=&#34;c1&#34;&gt;# 安装路径与mac同步为 ~/.miniconda3&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm ~/Temp/miniconda.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 也可以用apt安装 https://docs.conda.io/projects/conda/en/stable/user-guide/install/rpm-debian.html&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 静默安装后,可选择shell环境,会修改 .zshrc .bashrc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda init zsh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda init bash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda init --all &lt;span class=&#34;c1&#34;&gt;# 在所有可用 shell 上初始化 conda&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda --version
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda list
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda info
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# base环境 推荐 只能用于安装 anaconda、conda 和 conda 相关的软件包，例如`anaconda-client`或`conda-build`&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 配置文件 : ~/.condarc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda config --set auto_activate_base &lt;span class=&#34;nb&#34;&gt;false&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 设置开启新shell的时候不自动进入conda的base环境&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda config --set changeps1 False &lt;span class=&#34;c1&#34;&gt;# 抑制 conda 自己的提示修饰符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# conda config --add channels conda-forge 会加在第一个&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda config --append channels conda-forge
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda config --remove channels conda-forge
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda -V
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda create -n env_test &lt;span class=&#34;nv&#34;&gt;python&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;3.9 &lt;span class=&#34;c1&#34;&gt;# -n 是创建的环境的名字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda activate env_test
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python3 -V
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda activate &lt;span class=&#34;c1&#34;&gt;# 默认是base环境&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python3 -V
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda deactivate
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda update conda &lt;span class=&#34;c1&#34;&gt;# 更新自己&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装包或者命令行工具&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda install trash-cli &lt;span class=&#34;c1&#34;&gt;# 官方的 channel 没有很多的开源包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda install -c conda-forge trash-cli &lt;span class=&#34;c1&#34;&gt;# 指定 conda-forge 的channel&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# install的命令行工具的执行文件放在当前环境的bin目录下,如 /home/helq/miniconda3/envs/env_test/bin/trash-put; 同时也会被pip管理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# install 也可以安装python库文件,可以在 Python 脚本或交互式环境中直接导入并使用 import numpy as np&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 卸载conda&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf ~/conda
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf ~/.condarc ~/.conda ~/.continuum
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 导出某个非base环境到yaml文件; 仅将 Anaconda 或 Miniconda 文件复制到新目录或另一台计算机不会重新创建环境。您必须将环境作为一个整体导出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda activate env_test
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; -f env_test.yml --no-builds  或者 conda env &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; -f env_test.yml --no-builds
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# --override-channels 不导出.condarc里的channel; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# --no-builds 不导出构建编号,当跨平台迁移的时候必加,因为同一个版本的包在不同平台上的构建编号肯定不同;如: mac导出到linux上的时候&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 导入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;conda env create -f env_test.yml
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# docker&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://docs.docker.com/engine/install/debian/#install-using-the-repository&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;for&lt;/span&gt; pkg in docker.io docker-doc docker-compose podman-docker containerd runc&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;do&lt;/span&gt; sudo apt-get remove &lt;span class=&#34;nv&#34;&gt;$pkg&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;done&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;#卸载冲突的包&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt autoremove
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set up Docker&amp;#39;s `apt` repository&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Add Docker&amp;#39;s official GPG key:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo apt-get install ca-certificates curl
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo install -m &lt;span class=&#34;m&#34;&gt;0755&lt;/span&gt; -d /etc/apt/keyrings
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod a+r /etc/apt/keyrings/docker.asc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Add the repository to Apt sources:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;s2&#34;&gt;&amp;#34;deb [arch=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;dpkg --print-architecture&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;. /etc/os-release &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$VERSION_CODENAME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; stable&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  sudo tee /etc/apt/sources.list.d/docker.list &amp;gt; /dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Install the Docker packages&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Verify&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo docker run hello-world
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo docker images
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo docker container ls -a
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 以非 root 用户身份管理 Docker; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 创建一个名为`docker`的 Unix 组并向其中添加用户。当 Docker 守护进程启动时，它会创建一个可供`docker`组成员访问的 Unix 套接字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo groupadd docker              &lt;span class=&#34;c1&#34;&gt;# 创建`docker`组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG docker &lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 将您的用户添加到`docker`组&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo reboot                       &lt;span class=&#34;c1&#34;&gt;# 注销并重新登录，以便重新评估您的组成员身份&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run hello-world            &lt;span class=&#34;c1&#34;&gt;# 验证您是否可以在没有`sudo`情况下运行`docker`命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 如果在分配用户组之前 用sudo权限 执行过 docker CLI 中的如 docker login 这类命令, 会创建 ~/.docker 目录;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 在上述的情况下, 分配用户组后, 用普通用户直接执行 docker 命令, 有可能会报错, 因为 ~/.docker 的权限是 root 用户的; 报错信息可能为:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# WARNING: Error loading config file: /home/user/.docker/config.json -stat /home/user/.docker/config.json: permission denied&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 解决方式一: 删除`~/.docker/`目录（它会自动重新创建，但所有自定义设置都会丢失）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 方式二:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;:&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; /home/&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$USER&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;/.docker -R  &lt;span class=&#34;c1&#34;&gt;# 将这个文件夹的 拥有者 和 所属组 设为当前用户;-R：递归修改，即包括子目录和文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod g+rwx &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/.docker&amp;#34;&lt;/span&gt; -R &lt;span class=&#34;c1&#34;&gt;# 为 .docker 目录及其内容增加组权限，使所属组的成员可以读取（read）、写入（write）、执行（execute）文件。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 在 Debian 和 Ubuntu 上，Docker 服务(守护进程)(不是指的容器) 默认在启动时启动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status docker.service &lt;span class=&#34;c1&#34;&gt;# 这是 Docker 的主服务，负责管理 Docker 守护进程（dockerd），提供核心功能，包括容器管理、镜像拉取和存储等&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status containerd.service &lt;span class=&#34;c1&#34;&gt;# 这是 containerd 容器运行时服务，是一个独立的守护进程，用于管理容器的生命周期&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; docker.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; containerd.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 禁止开机启动;但是当使用docker命令时,这两个服务会自动启动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl disable docker.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl disable containerd.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 其他安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install shellcheck shfmt tmux universal-ctags&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;5文件上传下载服务&#34;&gt;
    &lt;a href=&#34;#5%e6%96%87%e4%bb%b6%e4%b8%8a%e4%bc%a0%e4%b8%8b%e8%bd%bd%e6%9c%8d%e5%8a%a1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    5、文件上传下载服务
&lt;/h3&gt;&lt;h4 id=&#34;adufs&#34;&gt;
    &lt;a href=&#34;#adufs&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    a、dufs
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/sigoden/dufs&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装  或者用docker直接使用就不用安装了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cargo install dufs
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 使用1、用docker直接启动容器挂载当前目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -v &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&lt;span class=&#34;nb&#34;&gt;pwd&lt;/span&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;:/data -p 5000:5000 --rm sigoden/dufs /data -A   &lt;span class=&#34;c1&#34;&gt;# -A 是dufs的选项&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 默认情况下，容器即使停止后，仍然会保留在本地（可以用 docker ps -a 查看）。这些“停止的容器”会占用存储空间，并且需要手动清理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# --rm 容器停止时自动删除容器及其临时文件（例如挂载的匿名卷）;避免积累过多无用的停止容器，减少磁盘空间浪费。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 使用2、用本地dufs命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/share/dufs &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ~/share/dufs
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow &lt;span class=&#34;m&#34;&gt;5000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs                                &lt;span class=&#34;c1&#34;&gt;# 以只读模式提供当前目录,只允许查看和下载;默认在前台执行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nohup dufs &amp;gt; output.log 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 后台启动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;jobs&lt;/span&gt; -l                             &lt;span class=&#34;c1&#34;&gt;# 查看后台启动程序; kill PID&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs -A                             &lt;span class=&#34;c1&#34;&gt;# 允许所有操作，如上传/删除/搜索/创建/编辑&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --allow-upload                 &lt;span class=&#34;c1&#34;&gt;# 只允许查看和下载和上传操作&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# --allow-archive 允许文件夹打包下载; --allow-search 允许搜索&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs ~/share/dufs                   &lt;span class=&#34;c1&#34;&gt;# 指定某个目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs linux-distro.iso               &lt;span class=&#34;c1&#34;&gt;# 指定单个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs -a admin:123@/:rw              &lt;span class=&#34;c1&#34;&gt;# 指定用户名admin/密码123&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs -b 127.0.0.1 -p &lt;span class=&#34;m&#34;&gt;80&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 监听特定ip和端口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --hidden .git,.DS_Store,tmp    &lt;span class=&#34;c1&#34;&gt;# 隐藏目录列表中的路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --hidden &lt;span class=&#34;s1&#34;&gt;&amp;#39;.*&amp;#39;&lt;/span&gt;                          &lt;span class=&#34;c1&#34;&gt;# hidden dotfiles&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --hidden &lt;span class=&#34;s1&#34;&gt;&amp;#39;*/&amp;#39;&lt;/span&gt;                          &lt;span class=&#34;c1&#34;&gt;# hidden all folders&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --hidden &lt;span class=&#34;s1&#34;&gt;&amp;#39;*.log,*.lock&amp;#39;&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# hidden by exts&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --hidden &lt;span class=&#34;s1&#34;&gt;&amp;#39;*.log&amp;#39;&lt;/span&gt; --hidden &lt;span class=&#34;s1&#34;&gt;&amp;#39;*.lock&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --render-index                 &lt;span class=&#34;c1&#34;&gt;# 使用index.html 提供静态网站&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dufs --render-spa                   &lt;span class=&#34;c1&#34;&gt;# 提供像 React/Vue 这样的单页应用程序&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 可以记录日志,见github&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 可以将这些选项放在配置文件,见github&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 命令行客户端访问&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -T path-to-file http://127.0.0.1:5000/new-path/path-to-file      &lt;span class=&#34;c1&#34;&gt;# 上传文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000/path-to-file                               &lt;span class=&#34;c1&#34;&gt;# download the file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000/path-to-file?hash                          &lt;span class=&#34;c1&#34;&gt;# retrieve the sha256 hash of the file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -C- -o file http://127.0.0.1:5000/file                           &lt;span class=&#34;c1&#34;&gt;# 可断点下载&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -o path-to-folder.zip http://127.0.0.1:5000/path-to-folder?zip   &lt;span class=&#34;c1&#34;&gt;# 将文件夹下载为 zip 文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X DELETE http://127.0.0.1:5000/path-to-file-or-folder           &lt;span class=&#34;c1&#34;&gt;# 删除文件/文件夹&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X MKCOL http://127.0.0.1:5000/path-to-folder                    &lt;span class=&#34;c1&#34;&gt;# 创建目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -X MOVE http://127.0.0.1:5000/path -H &lt;span class=&#34;s2&#34;&gt;&amp;#34;Destination: http://127.0.0.1:5000/new-path&amp;#34;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 将文件/文件夹移动到新路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 列出/搜索目录内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000?q&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;Dockerfile           &lt;span class=&#34;c1&#34;&gt;# search for files, similar to `find -name Dockerfile`&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000?simple                 &lt;span class=&#34;c1&#34;&gt;# output names only, similar to `ls -1`&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000?json                   &lt;span class=&#34;c1&#34;&gt;# output paths in json format&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 需要账户密码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000/file --user user:pass                 &lt;span class=&#34;c1&#34;&gt;# basic auth&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000/file --user user:pass --digest        &lt;span class=&#34;c1&#34;&gt;# digest auth&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl http://127.0.0.1:5000/__dufs__/health &lt;span class=&#34;c1&#34;&gt;# 健康检查&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 可断点上传&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;upload_offset&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;curl -I -s http://127.0.0.1:5000/file &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; tr -d &lt;span class=&#34;s1&#34;&gt;&amp;#39;\r&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; sed -n &lt;span class=&#34;s1&#34;&gt;&amp;#39;s/content-length: //p&amp;#39;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dd &lt;span class=&#34;nv&#34;&gt;skip&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$upload_offset&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;file &lt;span class=&#34;nv&#34;&gt;status&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;none &lt;span class=&#34;nv&#34;&gt;ibs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  curl -X PATCH -H &lt;span class=&#34;s2&#34;&gt;&amp;#34;X-Update-Range: append&amp;#34;&lt;/span&gt; --data-binary @- http://127.0.0.1:5000/file&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;bfilebrowser&#34;&gt;
    &lt;a href=&#34;#bfilebrowser&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    b、filebrowser
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;############################ docker模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/share/filebrowser
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/share/filebrowser/files  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;touch ~/share/filebrowser/filebrowser.db  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;touch ~/share/filebrowser/filebrowser.json
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; ~/share/filebrowser/filebrowser.json &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;{
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;port&amp;#34;: 80,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;baseURL&amp;#34;: &amp;#34;&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;address&amp;#34;: &amp;#34;&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;log&amp;#34;: &amp;#34;stdout&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;database&amp;#34;: &amp;#34;/database/filebrowser.db&amp;#34;,
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;  &amp;#34;root&amp;#34;: &amp;#34;/srv&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow &lt;span class=&#34;m&#34;&gt;12786&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -v ~/share/filebrowser/files:/srv &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -v ~/share/filebrowser/filebrowser.db:/database/filebrowser.db &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -v ~/share/filebrowser/filebrowser.json:/.filebrowser.json &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -u &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;id -u&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;:&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;id -g&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    -p 12786:80 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    filebrowser/filebrowser
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 默认情况下，镜像里已经有一个包含一些默认值的配置文件，因此您只需挂载根目录和数据库即可; 默认配置文件:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/filebrowser/filebrowser/blob/master/docker/root/defaults/settings.json&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;######################## 命令行模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; bash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nohup filebrowser -r ~/share/filebrowser -a 0.0.0.0 &amp;gt; output.log 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Username: `admin` Password: `admin`&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;c开启-sftp-服务&#34;&gt;
    &lt;a href=&#34;#c%e5%bc%80%e5%90%af-sftp-%e6%9c%8d%e5%8a%a1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    c、开启 sftp 服务
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-55&#34;&gt;55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-56&#34;&gt;56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-57&#34;&gt;57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-58&#34;&gt;58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-59&#34;&gt;59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-60&#34;&gt;60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-61&#34;&gt;61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-62&#34;&gt;62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-63&#34;&gt;63&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 确保系统已安装 OpenSSH 服务器 默认应该都存在并启动了sftp服务的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install openssh-server
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 检查 SSH 服务状态&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status ssh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 查看 /etc/ssh/sshd_config 这个文件内是否存在:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# override default of no subsystems&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Subsystem	sftp	/usr/lib/openssh/sftp-server
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 若存在则自动为所有创建的用户打开sftp服务,root能访问和修改所有文件; 普通用户能查看所有文件,但是只能修改自己有权限的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 所以为了安全性,可以添加一个只能sftp连接不能ssh登录shell的用户,并限制这个用户 使用 SFTP 能使用的目录;主要目的是为了不暴露普通用户密码给别人&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ChrootDirectory 指定的目录及其父目录必须满足以下条件:1、由 root 拥有;2、不可被其他用户写入（即权限中不能有 write 权限分配给非 root 用户）;这意味着普通用户的主目录（比如 /home/sftpuser），无法直接作为 ChrootDirectory，因为主目录通常是由该用户自己拥有的，而不是 root&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 解决办法:1、创建一个由 root 拥有的顶层目录（例如 /var/sftp），保证它不可写;2、在顶层目录下创建一个子目录（例如 /var/sftp/sftpuser），将该子目录的所有权赋予用户（例如 sftpuser），以允许用户上传文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo useradd -s /sbin/nologin sftpuser     &lt;span class=&#34;c1&#34;&gt;# 创建一个新用户，该用户仅被授予对服务器的文件传输访问权限; 不能登录shell,没有home目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                                           &lt;span class=&#34;c1&#34;&gt;# -m 会创建home目录; -d &amp;lt;path&amp;gt; 自定义home目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo passwd sftpuser                       &lt;span class=&#34;c1&#34;&gt;# 添加密码    123456                 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir -p /var/sftp/sftpuser
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown root:root /var/sftp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod &lt;span class=&#34;m&#34;&gt;755&lt;/span&gt; /var/sftp          &lt;span class=&#34;c1&#34;&gt;# root用户为7所有权限; 同组用户和不同组的用户为5只允许读和执行; 4:读 2:写 1:执行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown sftpuser:sftpuser /var/sftp/sftpuser    &lt;span class=&#34;c1&#34;&gt;# 将目录的所有权更改为您刚刚创建的用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod &lt;span class=&#34;m&#34;&gt;775&lt;/span&gt; /var/sftp/sftpuser          &lt;span class=&#34;c1&#34;&gt;# 同组用户可以读和写(目录必须有执行权限才能cd进入);其他用户只读&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG sftpuser &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;whoami&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 把当前用户加入 sftpuser 用户组,让当前用户可以操作`分享目录`,就让当前用户可以将自己的文件复制到这个`分享目录中`了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;getent group sftpuser   &lt;span class=&#34;c1&#34;&gt;# 查看用户组中有哪些用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 权限组生效要重新登录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## 修改 SSH 服务器配置以禁止sftpuser用户的终端访问，但允许文件传输访问&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo vim /etc/ssh/sshd_config &lt;span class=&#34;c1&#34;&gt;# 滚动到文件的最底部并添加以下配置片段; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 或者检查 /etc/ssh/sshd_config 中是否存在 Include /etc/ssh/sshd_config.d/*.conf 字样; 可如下方加一个新文件被引入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo touch /etc/ssh/sshd_config.d/sftp.conf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; /etc/ssh/sshd_config.d/sftp.conf &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;Match User sftpuser
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    ForceCommand internal-sftp
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    PasswordAuthentication yes
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    ChrootDirectory /var/sftp
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    PermitTunnel no
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    AllowAgentForwarding no
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    AllowTcpForwarding no
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;    X11Forwarding no
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su helq
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo sshd -t &lt;span class=&#34;c1&#34;&gt;# 测试&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl restart sshd     &lt;span class=&#34;c1&#34;&gt;# 重启或重新加载 SSH 服务&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 到 其他机器上 : &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 验证ssh是否关闭&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ssh sftpuser@your_server_ip     &lt;span class=&#34;c1&#34;&gt;# 会收到 This service allows sftp connections only.表示连接失败,无法再使用 SSH 访问 shell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 验证sftp是否开启&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sftp sftpuser@your_server_ip    &lt;span class=&#34;c1&#34;&gt;# 此命令将生成带有交互式提示的成功登录消息;可以在提示符中使用`ls`列出目录内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;############## 或者可以通过 sftp客户端界面(Cyberduck或FileZilla等) 连接访问&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Match User sftpuser            告诉 SSH 服务器仅将以下命令应用于指定的用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ForceCommand internal-sftp     强制 SSH 服务器在登录时运行 SFTP 服务器，确保其只能上传/下载文件,禁止 shell 登录访问。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# PasswordAuthentication yes     允许该用户进行密码验证;不然可能需要用户使用基于密钥的验证&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ChrootDirectory /var/sftp/     确保不允许用户访问/var/sftp目录之外的任何内容,/var/sftp 必须由 root 拥有，且不可被其他用户写入,在 /var/sftp 内，可以创建用户有写权限的子目录，如 /var/sftp/sftpuser&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# PermitTunnel                   禁止 SSH 隧道功能,提高安全性，防止用户滥用隧道功能绕过网络限制&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# AllowAgentForwarding           禁止 SSH 代理转发功能,端口转发、隧道和 X11 转发,进一步限制用户的功能，防止代理滥用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# AllowTcpForwarding             禁止 TCP 转发功能,防止用户通过 SSH 隧道代理访问内部网络或外部服务器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# X11Forwarding                  禁止 X11 图形界面转发,减少不必要的功能支持，提高安全性&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 这组命令从Match User开始，也可以为不同的用户复制和重复。确保相应地修改Match User行中的用户名&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;d-开启-ftp-服务&#34;&gt;
    &lt;a href=&#34;#d-%e5%bc%80%e5%90%af-ftp-%e6%9c%8d%e5%8a%a1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    d 、开启 ftp 服务
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-1&#34;&gt;  1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-2&#34;&gt;  2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-3&#34;&gt;  3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-4&#34;&gt;  4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-5&#34;&gt;  5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-6&#34;&gt;  6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-7&#34;&gt;  7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-8&#34;&gt;  8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-9&#34;&gt;  9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-10&#34;&gt; 10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-11&#34;&gt; 11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-12&#34;&gt; 12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-13&#34;&gt; 13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-14&#34;&gt; 14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-15&#34;&gt; 15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-16&#34;&gt; 16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-17&#34;&gt; 17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-18&#34;&gt; 18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-19&#34;&gt; 19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-20&#34;&gt; 20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-21&#34;&gt; 21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-22&#34;&gt; 22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-23&#34;&gt; 23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-24&#34;&gt; 24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-25&#34;&gt; 25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-26&#34;&gt; 26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-27&#34;&gt; 27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-28&#34;&gt; 28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-29&#34;&gt; 29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-30&#34;&gt; 30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-31&#34;&gt; 31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-32&#34;&gt; 32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-33&#34;&gt; 33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-34&#34;&gt; 34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-35&#34;&gt; 35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-36&#34;&gt; 36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-37&#34;&gt; 37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-38&#34;&gt; 38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-39&#34;&gt; 39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-40&#34;&gt; 40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-41&#34;&gt; 41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-42&#34;&gt; 42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-43&#34;&gt; 43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-44&#34;&gt; 44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-45&#34;&gt; 45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-46&#34;&gt; 46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-47&#34;&gt; 47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-48&#34;&gt; 48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-49&#34;&gt; 49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-50&#34;&gt; 50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-51&#34;&gt; 51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-52&#34;&gt; 52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-53&#34;&gt; 53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-54&#34;&gt; 54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-55&#34;&gt; 55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-56&#34;&gt; 56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-57&#34;&gt; 57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-58&#34;&gt; 58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-59&#34;&gt; 59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-60&#34;&gt; 60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-61&#34;&gt; 61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-62&#34;&gt; 62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-63&#34;&gt; 63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-64&#34;&gt; 64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-65&#34;&gt; 65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-66&#34;&gt; 66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-67&#34;&gt; 67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-68&#34;&gt; 68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-69&#34;&gt; 69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-70&#34;&gt; 70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-71&#34;&gt; 71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-72&#34;&gt; 72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-73&#34;&gt; 73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-74&#34;&gt; 74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-75&#34;&gt; 75&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-76&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-76&#34;&gt; 76&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-77&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-77&#34;&gt; 77&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-78&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-78&#34;&gt; 78&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-79&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-79&#34;&gt; 79&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-80&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-80&#34;&gt; 80&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-81&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-81&#34;&gt; 81&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-82&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-82&#34;&gt; 82&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-83&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-83&#34;&gt; 83&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-84&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-84&#34;&gt; 84&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-85&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-85&#34;&gt; 85&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-86&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-86&#34;&gt; 86&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-87&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-87&#34;&gt; 87&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-88&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-88&#34;&gt; 88&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-89&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-89&#34;&gt; 89&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-90&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-90&#34;&gt; 90&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-91&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-91&#34;&gt; 91&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-92&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-92&#34;&gt; 92&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-93&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-93&#34;&gt; 93&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-94&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-94&#34;&gt; 94&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-95&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-95&#34;&gt; 95&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-96&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-96&#34;&gt; 96&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-97&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-97&#34;&gt; 97&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-98&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-98&#34;&gt; 98&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-99&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-99&#34;&gt; 99&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-100&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-100&#34;&gt;100&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-101&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-101&#34;&gt;101&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-102&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-102&#34;&gt;102&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-103&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-103&#34;&gt;103&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-104&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-104&#34;&gt;104&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-105&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-105&#34;&gt;105&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-106&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-106&#34;&gt;106&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-107&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-107&#34;&gt;107&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-108&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-108&#34;&gt;108&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-109&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-109&#34;&gt;109&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-110&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-110&#34;&gt;110&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-111&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-111&#34;&gt;111&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-112&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-112&#34;&gt;112&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-113&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-113&#34;&gt;113&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-114&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-114&#34;&gt;114&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-115&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-115&#34;&gt;115&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-116&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-116&#34;&gt;116&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-117&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-117&#34;&gt;117&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-118&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-118&#34;&gt;118&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-119&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-119&#34;&gt;119&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-120&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-120&#34;&gt;120&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-121&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-121&#34;&gt;121&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-122&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-122&#34;&gt;122&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-123&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-123&#34;&gt;123&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-124&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-124&#34;&gt;124&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-125&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-125&#34;&gt;125&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-126&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-126&#34;&gt;126&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-127&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-127&#34;&gt;127&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-128&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-128&#34;&gt;128&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; sudo apt install vsftpd         &lt;span class=&#34;c1&#34;&gt;# 默认应该都是没有安装的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 开放端口;为 FTP 打开端口`20`和`21`;在启用 TLS 时打开端口`990`; pasv_max_port pasv_min_port 限制可用于被动 FTP 的端口范围40000到50000&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw status
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow from any to any port 20,21,990,40000:50000 proto tcp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw status
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 创建只用于 ftp 的用户;不允许登录shell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# chroot_local_user=YES时, ftp要求用户要有home目录,并且home目录不可写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo useradd -s /sbin/nologin -d /var/ftp ftpuser      &lt;span class=&#34;c1&#34;&gt;# -m 会创建home目录; -d &amp;lt;path&amp;gt; 自定义home目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo sh -c &lt;span class=&#34;s1&#34;&gt;&amp;#39;echo &amp;#34;/sbin/nologin&amp;#34; &amp;gt;&amp;gt; /etc/shells&amp;#39;&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# ftp会检查登录的用户的shell是否正常; 这里让 /sbin/nologin 变为有效的登录 shell&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir -p /var/ftp/ftpuser
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod &lt;span class=&#34;m&#34;&gt;555&lt;/span&gt; /var/ftp                          &lt;span class=&#34;c1&#34;&gt;# 让home目录不可写; 4:读 2:写 1:执行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown nobody:nogroup /var/ftp               &lt;span class=&#34;c1&#34;&gt;# 限制权限，确保进程或服务无法访问不必要的系统资源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo passwd ftpuser                              &lt;span class=&#34;c1&#34;&gt;# 添加密码    123456          &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chown ftpuser:ftpuser /var/ftp/ftpuser    &lt;span class=&#34;c1&#34;&gt;# 将目录的所有权更改为您刚刚创建的用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo chmod &lt;span class=&#34;m&#34;&gt;775&lt;/span&gt; /var/ftp/ftpuser          &lt;span class=&#34;c1&#34;&gt;# 同组用户可以读和写(目录必须有执行权限才能cd进入);其他用户只读&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo usermod -aG ftpuser &lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;whoami&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 把当前用户加入 ftpuser 用户组,让当前用户可以操作`分享目录`,就让当前用户可以将自己的文件复制到这个`分享目录中`了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;getent group ftpuser   &lt;span class=&#34;c1&#34;&gt;# 查看用户组中有哪些用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo useradd -r -M -s /sbin/nologin ftpsecure   &lt;span class=&#34;c1&#34;&gt;# 创建一个供nopriv_user使用的低权限用户&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 权限组生效要重新登录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak     &lt;span class=&#34;c1&#34;&gt;# 备份原始文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;su
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;####################################################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat &amp;gt; /etc/vsftpd.conf &lt;span class=&#34;s&#34;&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# NO: 表示 vsftpd 不会以独立的守护进程方式运行;用于资源受限的系统; 因为 inetd 或 xinetd 在没有连接时不会启动 FTP 服务,从而减少资源占用
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 当 listen=YES 时,vsftpd 只会在 IPv4 地址 上启动并监听 FTP 连接, listen_ipv6就必须为 NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;listen=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 启用对 IPv6 的支持,同时接受来自 IPv4 和 IPv6 的连接
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;listen_ipv6=NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 允许系统中的本地用户使用 FTP 登录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;local_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 启用此选项后,所有本地用户在登录时将被限制在他们的HOME目录内,他们无法访问其他系统目录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;chroot_local_user=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 用于指定哪些本地用户可以不受 chroot_local_user 功能限制;可以在 chroot_list_file 中列出特定用户
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# chroot_list_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# chroot_list_file=/etc/vsftpd.chroot_list
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 允许用户使用写操作; 如 上传文件 删除文件
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;write_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 实际权限 = 默认权限(文件的默认权限是666; 目录的默认权限是777) - umask
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;local_umask=022
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 每当用户切换到某个目录时,vsftpd 会检查该目录下是否存在一个名为 .message 的文件;如果 .message 文件存在,其内容会显示给用户,作为该目录的欢迎消息或说明
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;dirmessage_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 目录列表(例如 ls 命令)中的时间戳将显示为服务器本地时区时间
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;use_localtime=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 启用上传和下载操作的日志记录功能;默认在/var/log/vsftpd.log; 可由选项xferlog_file自定义
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;xferlog_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 用于指定 vsftpd 的日志文件位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# xferlog_file=/var/log/vsftpd.log
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 如果启用此选项,日志将采用标准 xferlog 格式,通常与传统 FTP 服务的日志格式兼容;日志文件的默认存储路径会更改为 /var/log/xferlog
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# xferlog_std_format=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 指定 FTP 数据连接的来源端口为 20;(21 端口:用于控制连接;接收用户命令并返回响应)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;connect_from_port_20=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 默认开启被动模式;需要服务端开放40000-50000的端口,所以对客户端的防火墙很友好
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;pasv_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;pasv_min_port=40000
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;pasv_max_port=50000
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 设置空闲会话的超时时间,单位为秒;如果客户端在此期间没有任何活动(如上传、下载、浏览目录等),则服务器会自动关闭该会话
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;idle_session_timeout=3600
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 设置数据连接的超时时间,单位为秒;指定了 vsftpd 等待数据连接(例如文件上传、下载等)时的最大空闲时间;如果在这个时间内没有数据传输,连接会被断开
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;data_connection_timeout=600
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 当 vsftpd 需要执行与 FTP 客户端相关的非特权操作时,它会以 nopriv_user 的身份运行子进程或线程,可以有效地减少可能的安全漏洞
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;nopriv_user=ftpsecure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 自定义的登录横幅信息
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;ftpd_banner=Welcome to blah FTP service.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 禁用匿名登录,只有本地用户可以登录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;anonymous_enable=NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 禁止匿名用户上传文件
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;anon_upload_enable=NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 禁止匿名用户创建目录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;anon_mkdir_write_enable=NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 控制匿名用户上传的文件的所有权设置;用于加强安全性和便于管理;默认情况下,匿名用户上传的文件的所有者是 ftp 或 nobody;通过启用此选项,可以将文件的所有者更改为指定的用户
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# chown_uploads=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# chown_username=whoever
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 指定一个空目录,作为 vsftpd 的 chroot() 监狱;chroot() 是一个将进程及其子进程的根目录改为指定目录的系统调用。
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 在 vsftpd 中,使用 chroot() 可以将某些用户限制在某个目录（或目录树）中,使得这些用户无法访问系统的其他部分
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 当 FTP 用户登录时,通常会被限制在他们的家目录内。如果启用了 chroot_local_user 或其他类似设置,FTP 用户将无法访问他们家目录以外的文件和目录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 该目录并不是为用户上传和下载文件的目录,而是用于保护和增强安全性。在一些特定情况下,vsftpd 会切换到该目录,并限制其对文件系统的访问
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;secure_chroot_dir=/var/run/vsftpd/empty
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 告诉 vsftpd 在进行用户登录认证时,使用 PAM(可插拔认证模块)来进行验证;简单来说,它指定了 FTP 服务器在验证用户身份时,应该使用什么样的认证规则
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# PAM 就是一个管理系统登录、密码验证等认证工作的工具;vsftpd 需要验证用户是否能登录,pam_service_name=vsftpd 就是告诉它：在验证时,去找一个专门为 vsftpd 配置的认证规则文件,通常这个文件叫 vsftpd,会放在 /etc/pam.d/ 文件夹里
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;pam_service_name=vsftpd
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 是否开启 FTPS
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;ssl_enable=NO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 使用 UTF-8 编码的文件系统
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;utf8_filesystem=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# FTP 服务器将异步处理 ABOR 请求,提高处理效率,但可能存在安全风险
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# async_abor_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 专门用于文本文件,启用该选项后,FTP 服务器会在上传/下载文件时进行 ASCII 处理(即转换换行符),可能会增加 CPU 负担和安全隐患
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# ascii_upload_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# ascii_download_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 启用此选项后,vsftpd 将检查匿名 FTP 用户的电子邮件地址,如果该地址在禁止列表中,用户将无法登录
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# deny_email_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 这是存储被禁止的电子邮件地址列表的文件。vsftpd 会检查该文件中的电子邮件地址,并阻止这些地址的匿名用户登录。每行一个电子邮件地址
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# banned_email_file=/etc/vsftpd.banned_emails
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# 用户使用 ls 命令时,FTP 服务器会列出当前目录及其所有子目录的内容,出于性能考虑,最好保持默认的禁用状态
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;# ls_recurse_enable=YES
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s&#34;&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#####################################################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl restart vsftpd&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;eminio&#34;&gt;
    &lt;a href=&#34;#eminio&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    e、minio
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p ~/software/minio/share
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo ufw allow from any to any port 19000,19001 proto tcp
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d -p 19000:9000 -p 19001:9001 &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -v ~/software/minio/share:/data &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  quay.io/minio/minio server /data --console-address &lt;span class=&#34;s2&#34;&gt;&amp;#34;:9001&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;http://ip:19001    minioadmin:minioadmin&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;四可选&#34;&gt;
    &lt;a href=&#34;#%e5%9b%9b%e5%8f%af%e9%80%89&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    四、可选
&lt;/h3&gt;&lt;h4 id=&#34;apipx&#34;&gt;
    &lt;a href=&#34;#apipx&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    a、pipx
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-9&#34;&gt;9&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 可选 pipx 专门下载python命令行工具 到隔离环境的,用哪个用户下载的就在哪个用户目录下的 ~/.local/bin 中; 除非加了--global 会安装在全局的地方,但是版本低不支持&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install pipx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx ensurepath &lt;span class=&#34;c1&#34;&gt;# 就是设置环境变量中的 $PATH:~/.local/bin&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo pipx ensurepath --global &lt;span class=&#34;c1&#34;&gt;# apt的版本太低不支持&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx install trash-cli &lt;span class=&#34;c1&#34;&gt;# 安装最新版本,但是默认只能一个用户使用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx list
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx uninstall-all
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pipx completions &lt;span class=&#34;c1&#34;&gt;# 查看补全说明&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;bclash&#34;&gt;
    &lt;a href=&#34;#bclash&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    b、clash
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-55&#34;&gt;55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-56&#34;&gt;56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-57&#34;&gt;57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-58&#34;&gt;58&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;##################### clash代理 ########################################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /usr/local/clash-arm64
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /usr/local/clash-arm64
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;clash-linux-arm64-v1.18.0.gz  config.yaml  Country.mmdb
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gunzip clash-linux-arm64-v1.18.0.gz 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv clash-linux-arm64-v1.18.0 clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod +x clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo mkdir /etc/clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cp clash /usr/local/bin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cp config.yaml /etc/clash/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo cp Country.mmdb /etc/clash/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls /etc/clash/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo vim /etc/systemd/system/clash.service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Unit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;Description&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;Clash daemon, A rule-based proxy in Go.
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;After&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;network.target
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Service&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;Type&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;simple
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;Restart&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;always
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ExecStart&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/bin/clash -d /etc/clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Install&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;WantedBy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;multi-user.target
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl stop clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl &lt;span class=&#34;nb&#34;&gt;enable&lt;/span&gt; clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl start clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl disable clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;http_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:25307 &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;https_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:25307 &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;all_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;socks5://127.0.0.1:25307
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://www.google.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://github.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mkdir -p /usr/local/my-functions/ &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; /usr/local/my-functions/
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;source /usr/local/my-functions/debian_proxy&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; /home/helq/.bashrc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;source /usr/local/my-functions/debian_proxy&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; /root/.bashrc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;alias ll=&amp;#39;ls -l&amp;#39;&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; /home/helq/.bashrc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;alias ll=&amp;#39;ls -l&amp;#39;&amp;#34;&lt;/span&gt; &amp;gt;&amp;gt; /root/.bashrc
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ..
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#重新连接&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo systemctl status clash
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;getproxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;setproxy term
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;getproxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl https://www.google.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#####################################&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h4 id=&#34;c卸载-apache2&#34;&gt;
    &lt;a href=&#34;#c%e5%8d%b8%e8%bd%bd-apache2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    c、卸载 apache2
&lt;/h4&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt list apache
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;which -a apache2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ls /usr/sbin/apache2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systemctl disable apache2.service &lt;span class=&#34;c1&#34;&gt;#禁止自启动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;apt-get --purge remove apache2 -y
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt autoremove -y&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;五后续更新&#34;&gt;
    &lt;a href=&#34;#%e4%ba%94%e5%90%8e%e7%bb%ad%e6%9b%b4%e6%96%b0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    五、后续更新
&lt;/h3&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 安装 fastfetchmkdir -p &amp;#34;$HOME/software/fastfetch&amp;#34;  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;wget -P &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/software/fastfetch&amp;#34;&lt;/span&gt; https://github.com/fastfetch-cli/fastfetch/releases/download/2.31.0/fastfetch-linux-aarch64.deb  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo dpkg -i &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/software/fastfetch/fastfetch-linux-aarch64.deb&amp;#34;&lt;/span&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fastfetch --version  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;which -a fastfetch  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git -C &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/Data/Config&amp;#34;&lt;/span&gt; pull  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ssh 连接时,不要打印 系统版本和版权信息  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;touch &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/.hushlogin&amp;#34;&lt;/span&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ffmpeg 安装  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install ffmpeg  
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 下载 m3u8 视频  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ffmpeg -i &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://aa.ww.bb/mixed.m3u8&amp;#34;&lt;/span&gt; -c copy -bsf:a aac_adtstoasc output.mp4&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
</description>
        </item>
        <item>
        <title>Vim使用教程</title>
        <link>https://qh.1357810.xyz/articles/linux/vim/</link>
        <pubDate>Mon, 03 Jun 2024 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/vim/</guid>
        <description>&lt;img src="https://logan.1357810.xyz/cover/pic_105.jpg" alt="Featured image of post Vim使用教程" /&gt;&lt;h2 id=&#34;目录&#34;&gt;
    &lt;a href=&#34;#%e7%9b%ae%e5%bd%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    目录
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%93%8d%e4%bd%9c%e5%a4%87%e5%bf%98%e5%bd%95&#34; &gt;操作备忘录


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e9%87%8d%e5%a4%8d%e7%9a%84%e5%a8%81%e5%8a%9b&#34; &gt;重复的威力


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%85%89%e6%a0%87%e7%a7%bb%e5%8a%a8&#34; &gt;光标移动


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%8f%92%e5%85%a5%e6%a8%a1%e5%bc%8f&#34; &gt;插入模式


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%8f%92%e5%85%a5%e6%a8%a1%e5%bc%8f%e7%9a%84%e5%91%bd%e4%bb%a4&#34; &gt;插入模式的命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e8%87%aa%e5%8a%a8%e8%a1%a5%e5%85%a8&#34; &gt;自动补全


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e6%9c%ac%e7%bc%96%e8%be%91&#34; &gt;文本编辑


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e6%9c%ac%e5%af%b9%e8%b1%a1&#34; &gt;文本对象


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e7%a7%bb%e5%8a%a8%e6%96%87%e6%9c%ac&#34; &gt;移动文本


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e5%ad%97%e6%8e%92%e7%89%88&#34; &gt;文字排版


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%a4%8d%e5%88%b6%e7%b2%98%e8%b4%b4&#34; &gt;复制粘贴


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%92%a4%e9%94%80%e4%b8%8e%e6%81%a2%e5%a4%8d&#34; &gt;撤销与恢复


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%9f%a5%e6%89%be%e6%9b%bf%e6%8d%a2&#34; &gt;查找替换


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%8f%af%e8%a7%86%e6%a8%a1%e5%bc%8f&#34; &gt;可视模式


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%b3%a8%e9%87%8a%e5%91%bd%e4%bb%a4&#34; &gt;注释命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%89%93%e5%bc%80%e6%96%87%e4%bb%b6&#34; &gt;打开文件


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e4%bf%9d%e5%ad%98%e9%80%80%e5%87%ba&#34; &gt;保存退出


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e4%bb%b6%e6%af%94%e8%be%83&#34; &gt;文件比较


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e4%bb%b6%e6%93%8d%e4%bd%9c&#34; &gt;文件操作


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e7%bc%93%e5%86%b2%e5%8c%ba&#34; &gt;缓冲区


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%88%86%e5%b1%8f%e7%aa%97%e5%8f%a3&#34; &gt;分屏窗口


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%a0%87%e7%ad%be%e9%a1%b5&#34; &gt;标签页


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#vim%e4%b9%a6%e7%ad%be&#34; &gt;Vim书签


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e4%bb%b6%e6%b5%8f%e8%a7%88%e5%99%a8&#34; &gt;文件浏览器


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%8b%bc%e5%86%99%e6%a3%80%e6%9f%a5&#34; &gt;拼写检查


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e4%bb%a3%e7%a0%81%e6%8a%98%e5%8f%a0&#34; &gt;代码折叠


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e6%a1%a3%e5%8a%a0%e8%a7%a3%e5%af%86&#34; &gt;文档加解密


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%ae%8f%e5%bd%95%e5%88%b6&#34; &gt;宏录制


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%85%b6%e5%ae%83%e5%91%bd%e4%bb%a4&#34; &gt;其它命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%8e%86%e5%8f%b2%e5%91%bd%e4%bb%a4&#34; &gt;历史命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%af%84%e5%ad%98%e5%99%a8&#34; &gt;寄存器


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6&#34; &gt;配置文件


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%b8%b8%e7%94%a8%e6%8f%92%e4%bb%b6&#34; &gt;常用插件


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#vim%e6%a8%a1%e5%bc%8f&#34; &gt;Vim模式


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%a4%96%e9%83%a8%e5%91%bd%e4%bb%a4&#34; &gt;外部命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#gui%e5%91%bd%e4%bb%a4&#34; &gt;GUI命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e8%87%aa%e5%8a%a8%e5%91%bd%e4%bb%a4&#34; &gt;自动命令


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%bf%ab%e9%80%9f%e4%bf%ae%e5%a4%8d%e7%aa%97%e5%8f%a3&#34; &gt;快速修复窗口


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%96%87%e4%bb%b6%e7%bc%96%e7%a0%81&#34; &gt;文件编码


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%b8%ae%e5%8a%a9%e4%bf%a1%e6%81%af&#34; &gt;帮助信息


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%9c%89%e7%82%b9%e6%84%8f%e6%80%9d&#34; &gt;有点意思


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e7%ba%a6%e5%ae%9a%e8%a7%84%e8%8c%83&#34; &gt;约定规范


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%8c%89%e9%94%ae%e8%af%b4%e6%98%8e&#34; &gt;按键说明


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e7%bd%91%e7%bb%9c%e8%b5%84%e6%ba%90&#34; &gt;网络资源


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e4%bd%bf%e7%94%a8%e5%bb%ba%e8%ae%ae&#34; &gt;使用建议


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#vim%e9%94%ae%e7%9b%98%e5%9b%be&#34; &gt;Vim键盘图


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e5%85%b6%e4%bb%96%e5%9b%be&#34; &gt;其他图


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f%e7%9a%84%e6%a8%a1%e5%bc%8f&#34; &gt;正则表达式的模式


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#Ctrl%e6%8c%89%e9%94%ae&#34; &gt;Ctrl按键


&lt;/a&gt;


&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;#Ctrl-X%e6%a8%a1%e5%bc%8f&#34; &gt;Ctrl-X模式


&lt;/a&gt;


&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;操作备忘录&#34;&gt;
    &lt;a href=&#34;#%e6%93%8d%e4%bd%9c%e5%a4%87%e5%bf%98%e5%bd%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    操作备忘录
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 操作备忘录
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 0、vim -u NONE &amp;lt;file&amp;gt; , 不加载vimrc的配置打开vim, 测试干净环境下的vim
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 1、删除（不剪切），不将其剪切内容放入默认寄存器，而是直接丢进黑洞寄存器
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;lt;&lt;span class=&#34;nv&#34;&gt;press&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&amp;gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;_dd
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 2、放到无名寄存器&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;)(vim默认的),在vim默认寄存器为系统剪切板时有用,不复制到系统剪切板,但是还能通过&amp;#34;&amp;#34;p找回
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;lt;&lt;span class=&#34;nv&#34;&gt;press&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&amp;gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;dd
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 3、删除并进入插入模式: s===cl===dli
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 4、* : 向后搜索光标所在的单词并居中显示结果&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# : 向前搜索光标所在的单词并居中显示结果&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 5、插入模式,&amp;lt;Ctrl-o&amp;gt;,临时执行一个普通模式命令，然后自动返回插入模式
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 6、gv 重选上次的选区
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 7、J 将多行合并为一行,行与行之间会加空格; gJ  将多行合并为一行，行与行之间不加空格
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 8、在一些情况下,normal模式使用不了,如:tab terminal &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; 可以用: &amp;lt;C-w&amp;gt;N 或者 &amp;lt;C-&lt;span class=&#34;se&#34;&gt;\&amp;gt;&lt;/span&gt;&amp;lt;C-n&amp;gt; 切回normal模式
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 9、插入上一次插入的文本(i文本`esc`a`C-a`)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 10、用&amp;lt;.&amp;gt;键可以重复上次的命令&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;编辑&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 11、选区上下移动 :&amp;lt;C-u&amp;gt;&amp;#39;&amp;lt;,&amp;#39;&amp;gt;m &amp;#39;&amp;gt;+1&amp;lt;CR&amp;gt;gv   整体向下移动一行;   :&amp;lt;C-u&amp;gt;&amp;#39;&amp;lt;,&amp;#39;&amp;gt;m &amp;#39;&amp;lt;-2&amp;lt;CR&amp;gt;gv   整体向上移动一行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; 12、g&lt;span class=&#34;s1&#34;&gt;&amp;#39; g` 标签跳转时的反引号和引号命令,前面加上g,可以不改变jumplist,即不改变跳转列表的顺序和位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#34; 13、:h[elp] cursorcolumn 查看文档; :set cursorcolumn? 查看当前环境的某项配置的值
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#34; 14、:verbose set cursorcolumn? 查看当前环境的某项配置的值,更详细,看到是在哪里被定义修改的
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#34; 15、:map &amp;lt;C-c&amp;gt;  :imap &amp;lt;C-c&amp;gt; :verbose map &amp;lt;C-c&amp;gt;  :verbose imap &amp;lt;C-c&amp;gt;  查看按键映射;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#34; 16、:echo hasmapto(&amp;#39;&lt;/span&gt;&amp;lt;Plug&amp;gt;Sneak_S&lt;span class=&#34;s1&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;v&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;  执行某个函数并打印值,hasmapto是vim自带的检查映射的函数&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; 17、:call fun()  执行某个函数
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34; 代码折叠命令： ( close==创建折叠 )!= (open==展开折叠)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       za         切换当前光标下的折叠的状态&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;open或close&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; zc+zo
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zA         递归切换当前折叠及其嵌套折叠的状态 == zC+zO
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zr         减少折叠级别
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zm         增加折叠级别
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zj         定位到下一个折叠处
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zk         定位到上一个折叠处
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zc         创建一个光标下的折叠(close)(从内向外)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zC         递归创建折叠及嵌套折叠&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;从内向外&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zo         展开一个光标下的折叠(open)(从外向内)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zO         递归打开当前折叠及其嵌套折叠,大写的字母O &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;从外向内&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zf         对所指定的文本范围进行折叠,只支持manual和marker
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;                                  宏命令
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;-----------------{{{-----------------
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; A. 常规使用宏的流程：
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;   1. q 进入宏录制 + 寄存器字母(a-z)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;   2. 录制宏内容
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;   3. q 退出宏录制
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;   4. @a-z 使用字母指定的宏
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;   5. @@ 重复最近使用过宏
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; -------------------------------------------------------------------------------&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;重复的威力&#34;&gt;
    &lt;a href=&#34;#%e9%87%8d%e5%a4%8d%e7%9a%84%e5%a8%81%e5%8a%9b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    重复的威力
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.                   &lt;span class=&#34;c1&#34;&gt;# 小数点，即重复（Dot）命令，重复执行上一次命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;command&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 重复某个命令 N 次，例如：10k，光标上移 10 行&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;善用宏和正则表达式，同样可以达到减少重复操作的目的。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;normal模式下键入&lt;code&gt;5a文本&amp;lt;ESC&amp;gt;&lt;/code&gt;  会插入5次&lt;code&gt;文本&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;光标移动&#34;&gt;
    &lt;a href=&#34;#%e5%85%89%e6%a0%87%e7%a7%bb%e5%8a%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    光标移动
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;注意：普通（Normal）模式下，任意一个动作都可以重复。&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-1&#34;&gt;  1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-2&#34;&gt;  2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-3&#34;&gt;  3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-4&#34;&gt;  4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-5&#34;&gt;  5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-6&#34;&gt;  6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-7&#34;&gt;  7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-8&#34;&gt;  8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-9&#34;&gt;  9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-10&#34;&gt; 10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-11&#34;&gt; 11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-12&#34;&gt; 12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-13&#34;&gt; 13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-14&#34;&gt; 14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-15&#34;&gt; 15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-16&#34;&gt; 16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-17&#34;&gt; 17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-18&#34;&gt; 18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-19&#34;&gt; 19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-20&#34;&gt; 20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-21&#34;&gt; 21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-22&#34;&gt; 22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-23&#34;&gt; 23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-24&#34;&gt; 24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-25&#34;&gt; 25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-26&#34;&gt; 26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-27&#34;&gt; 27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-28&#34;&gt; 28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-29&#34;&gt; 29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-30&#34;&gt; 30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-31&#34;&gt; 31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-32&#34;&gt; 32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-33&#34;&gt; 33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-34&#34;&gt; 34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-35&#34;&gt; 35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-36&#34;&gt; 36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-37&#34;&gt; 37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-38&#34;&gt; 38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-39&#34;&gt; 39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-40&#34;&gt; 40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-41&#34;&gt; 41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-42&#34;&gt; 42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-43&#34;&gt; 43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-44&#34;&gt; 44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-45&#34;&gt; 45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-46&#34;&gt; 46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-47&#34;&gt; 47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-48&#34;&gt; 48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-49&#34;&gt; 49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-50&#34;&gt; 50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-51&#34;&gt; 51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-52&#34;&gt; 52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-53&#34;&gt; 53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-54&#34;&gt; 54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-55&#34;&gt; 55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-56&#34;&gt; 56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-57&#34;&gt; 57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-58&#34;&gt; 58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-59&#34;&gt; 59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-60&#34;&gt; 60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-61&#34;&gt; 61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-62&#34;&gt; 62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-63&#34;&gt; 63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-64&#34;&gt; 64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-65&#34;&gt; 65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-66&#34;&gt; 66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-67&#34;&gt; 67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-68&#34;&gt; 68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-69&#34;&gt; 69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-70&#34;&gt; 70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-71&#34;&gt; 71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-72&#34;&gt; 72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-73&#34;&gt; 73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-74&#34;&gt; 74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-75&#34;&gt; 75&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-76&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-76&#34;&gt; 76&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-77&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-77&#34;&gt; 77&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-78&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-78&#34;&gt; 78&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-79&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-79&#34;&gt; 79&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-80&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-80&#34;&gt; 80&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-81&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-81&#34;&gt; 81&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-82&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-82&#34;&gt; 82&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-83&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-83&#34;&gt; 83&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-84&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-84&#34;&gt; 84&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-85&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-85&#34;&gt; 85&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-86&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-86&#34;&gt; 86&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-87&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-87&#34;&gt; 87&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-88&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-88&#34;&gt; 88&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-89&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-89&#34;&gt; 89&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-90&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-90&#34;&gt; 90&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-91&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-91&#34;&gt; 91&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-92&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-92&#34;&gt; 92&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-93&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-93&#34;&gt; 93&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-94&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-94&#34;&gt; 94&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-95&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-95&#34;&gt; 95&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-96&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-96&#34;&gt; 96&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-97&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-97&#34;&gt; 97&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-98&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-98&#34;&gt; 98&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-99&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-99&#34;&gt; 99&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-100&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-100&#34;&gt;100&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-101&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-101&#34;&gt;101&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-102&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-102&#34;&gt;102&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-103&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-103&#34;&gt;103&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-104&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-104&#34;&gt;104&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-105&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-105&#34;&gt;105&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-106&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-106&#34;&gt;106&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-107&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-107&#34;&gt;107&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-108&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-108&#34;&gt;108&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;c1&#34;&gt;# -------------------- 单位级移动 -------------------- &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;h                   &lt;span class=&#34;c1&#34;&gt;# 光标左移，等价于 &amp;lt;Left&amp;gt; 方向键（h 键位于左边，按该键光标左移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;j                   &lt;span class=&#34;c1&#34;&gt;# 光标下移，等价于 &amp;lt;Down&amp;gt; 方向键（j 键有向下的突起，按该键光标下移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;k                   &lt;span class=&#34;c1&#34;&gt;# 光标上移，等价于 &amp;lt;Up&amp;gt; 方向键 （k 键与 j 键相反，按该键光标上移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;l                   &lt;span class=&#34;c1&#34;&gt;# 光标右移，等价于 &amp;lt;Right&amp;gt; 方向键（l 键位于右边，按下该键光标向右移动）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;c1&#34;&gt;# -------------------- 单词级移动 --------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;w                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个标点或空格分隔的单词开头（w: word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;W                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个空格分隔的单词开头（W: Word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;e                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个标点或空格分隔的单词尾部（e: end）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;E                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个空格分隔的单词尾部（E: End）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;b                   &lt;span class=&#34;c1&#34;&gt;# 移动到上一个标点或空格分隔的单词开头（b: backward）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;B                   &lt;span class=&#34;c1&#34;&gt;# 移动到上一个空格分隔的单词开头（B: Backward）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;c1&#34;&gt;# -------------------- 块级移动 ----------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 跳到行首，数字 0，等价于 &amp;lt;Home&amp;gt; 起始键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;^                   &lt;span class=&#34;c1&#34;&gt;# 跳到行首非空字符，可以使用 0w 代替 ^，按键更方便&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$                   &lt;span class=&#34;c1&#34;&gt;# 跳到行尾，等价于 &amp;lt;End&amp;gt; 结尾键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ge                  &lt;span class=&#34;c1&#34;&gt;# 向后移动到单词词尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gE                  &lt;span class=&#34;c1&#34;&gt;# 向后移动到空白隔开的单词词尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gg                  &lt;span class=&#34;c1&#34;&gt;# 跳到第一行，等价于 Ctrl+&amp;lt;Home&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;G                   &lt;span class=&#34;c1&#34;&gt;# 跳到最后一行，等价于 Ctrl+&amp;lt;End&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;G                &lt;span class=&#34;c1&#34;&gt;# 跳到第 N 行，例如 10G 是移动到第 10 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N                  &lt;span class=&#34;c1&#34;&gt;# 跳到第 N 行，例如 :10&amp;lt;Enter&amp;gt; 是移动到第 10 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 移动到当前行的 N 列&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;count&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;%            &lt;span class=&#34;c1&#34;&gt;# 移动到文件百分之 {count} 的位置，例如 10% 是移动到文件 10% 的位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Enter&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 移动到下一行首个非空字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N&amp;lt;Enter&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 光标向下移动 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 句子的结尾是由句号 (.)、问号 (?) 或感叹号 (!) 后跟一个或多个空格、制表符或换行符标识的;没有分隔符时,不会拆分成不同的句子&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个句子的开头&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 移动到[上一个句子/这个句子] 的开头  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一个段落（空行分隔）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 移动到上一个段落（空行分隔）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;+                   &lt;span class=&#34;c1&#34;&gt;# 移动到下一行首个非空字符，等价于 &amp;lt;Enter&amp;gt; 回车键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;-                   &lt;span class=&#34;c1&#34;&gt;# 移动到上一行首个非空字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;H                   &lt;span class=&#34;c1&#34;&gt;# 移动到屏幕上部（H: High）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;M                   &lt;span class=&#34;c1&#34;&gt;# 移动到屏幕中部（M: Middle）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;L                   &lt;span class=&#34;c1&#34;&gt;# 移动到屏幕下部（L: Low）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gm                  &lt;span class=&#34;c1&#34;&gt;# 移动到的行中间&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gj                  &lt;span class=&#34;c1&#34;&gt;# 光标向下移动一个屏幕行，非实际行，忽略自动换行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gk                  &lt;span class=&#34;c1&#34;&gt;# 光标向上移动一个屏幕行，非实际行，忽略自动换行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Up&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Up&amp;gt; 方向键，向上翻页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Down&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Down&amp;gt; 方向键，向下翻页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Left&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Left&amp;gt; 方向键，向左移动一个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Right&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Right&amp;gt; 方向键，向右移动一个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ju&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;mps&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 输出所有跳转&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cle&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;arjumps&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 清除所有跳转&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;c1&#34;&gt;# -------------------- 翻屏移动 ----------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zz                  &lt;span class=&#34;c1&#34;&gt;# 调整光标所在行到屏幕中央&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zt                  &lt;span class=&#34;c1&#34;&gt;# 调整光标所在行到屏幕上部&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zb                  &lt;span class=&#34;c1&#34;&gt;# 调整光标所在行到屏幕下部&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+e              &lt;span class=&#34;c1&#34;&gt;# 向上滚动一行（e: extra line）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+y              &lt;span class=&#34;c1&#34;&gt;# 向下滚动一行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+u              &lt;span class=&#34;c1&#34;&gt;# 向上滚动半屏（Move up 1/2 a screen）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+d              &lt;span class=&#34;c1&#34;&gt;# 向下滚动半屏（Move down 1/2 a screen）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+f              &lt;span class=&#34;c1&#34;&gt;# 向下滚动一屏（Move forward one full screen）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+b              &lt;span class=&#34;c1&#34;&gt;# 向上滚动一屏（Move back one full screen）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                    &lt;span class=&#34;c1&#34;&gt;# -------------------- 编程辅助移动 ------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;%                   &lt;span class=&#34;c1&#34;&gt;# 不仅匹配跳转到对应的 {} () []，而且能在 if、else、elseif 之间跳跃&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gd                  &lt;span class=&#34;c1&#34;&gt;# 跳转到局部变量定义处，即光标下的单词的定义&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gD                  &lt;span class=&#34;c1&#34;&gt;# 跳转到全局变量定义处，即光标下的单词的定义&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gf                  &lt;span class=&#34;c1&#34;&gt;# 打开名称为光标下文件名的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;m                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个成员函数开头(光标移动到{那里)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;m                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一个成员函数开头(光标移动到{那里)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;M                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一个成员函数结尾(光标移动到}那里)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;M                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个成员函数结尾(光标移动到}那里)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[{&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一处未匹配的 {,从代码块内部向外找{ ,平级的不会找 下面3个同理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]}&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一处未匹配的 },从代码块内部向外找}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[(&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一处未匹配的 (,从代码块内部向外找(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;])&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一处未匹配的 ),从代码块内部向外找)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;c                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个不同处（diff 时）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;c                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一个不同处（diff 时）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[[&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个行首是{的那一行  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一个行首是{的那一行,这两个都没啥用  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个行首是}的那一行  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到下一个行首是}的那一行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;########## 自定义: #################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ]]  跳转到下一个{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# [[  跳转到上一个{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ][  跳转到下一个},]开头都是下一个&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# []  跳转到上一个},[开头都是上一个&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;##################################&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;/                  &lt;span class=&#34;c1&#34;&gt;# 跳转到当前/上一个注释块(/*)开始处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;*                  &lt;span class=&#34;c1&#34;&gt;# 同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;/                  &lt;span class=&#34;c1&#34;&gt;# 跳转到当前/下一个注释块(*/)结尾处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;*                  &lt;span class=&#34;c1&#34;&gt;# 同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;#                  # 跳转到下一个 #if 或者 #else 处,只在C语言里有用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;#                  # 跳转到上一个 #else 或者 #endif 处,只在C语言里有用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/pattern            &lt;span class=&#34;c1&#34;&gt;# 从光标处向文件尾搜索 pattern&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;?pattern            &lt;span class=&#34;c1&#34;&gt;# 从光标处向文件头搜索 pattern&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;n                   &lt;span class=&#34;c1&#34;&gt;# 向同一方向执行上一次搜索&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N                   &lt;span class=&#34;c1&#34;&gt;# 向相反方向执行上一次搜索&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;%                   &lt;span class=&#34;c1&#34;&gt;# 匹配括号移动，包括 ()，{}，[]。结合以下两个命令相当强大。前提：需要把光标先移到括号上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;*                   &lt;span class=&#34;c1&#34;&gt;# 向后搜索光标所在的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#                   # 向前搜索光标所在的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Shift&amp;gt;*            &lt;span class=&#34;c1&#34;&gt;# 搜索光标所在位置的字符串，不用输入字符串，查询速度比 /pattern 快&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;f&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向后搜索当前行第一个为 {char} 的字符，Nfv 可以找到第 N 个为 v 字符，下同（f: find）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;F&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向前搜索当前行第一个为 {char} 的字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;t&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向后搜索当前行第一个为 {char} 的字符前（t: to）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;T&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向前搜索当前行第一个为 {char} 的字符前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 重复上次的字符查找命令（f/t 命令）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;,                   &lt;span class=&#34;c1&#34;&gt;# 反转方向查找上次的字符查找命令（f/t 命令）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tx                  &lt;span class=&#34;c1&#34;&gt;# 搜索当前行到指定 字符串 之前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fx                  &lt;span class=&#34;c1&#34;&gt;# 搜索当前行到指定 字符串 之处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 放弃查找。例如，启动了 f 命令后发现想用的是 F 命令，&amp;lt;Esc&amp;gt; 退出键放弃查找&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;注意：块级 移动要善于使用 Vim 的&lt;strong&gt;书签&lt;/strong&gt;和&lt;strong&gt;标签页&lt;/strong&gt;功能，实现文件内容及文件之间快速移动。&lt;/p&gt;
&lt;h2 id=&#34;插入模式&#34;&gt;
    &lt;a href=&#34;#%e6%8f%92%e5%85%a5%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    插入模式
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i                   &lt;span class=&#34;c1&#34;&gt;# 在光标处进入插入模式（i: insert）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I                   &lt;span class=&#34;c1&#34;&gt;# 在行首进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a                   &lt;span class=&#34;c1&#34;&gt;# 在光标后进入插入模式（a: append）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;A                   &lt;span class=&#34;c1&#34;&gt;# 在行尾进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;o                   &lt;span class=&#34;c1&#34;&gt;# 在下一行插入新行并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;O                   &lt;span class=&#34;c1&#34;&gt;# 在上一行插入新行并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;s                   &lt;span class=&#34;c1&#34;&gt;# 删除光标所在的字符并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;S                   &lt;span class=&#34;c1&#34;&gt;# 删除当前行并插入文本 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gi                  &lt;span class=&#34;c1&#34;&gt;# 进入到上一次插入模式的位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gI                  &lt;span class=&#34;c1&#34;&gt;# 在当前行第 1 列插入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 退出插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 退出插入模式，等价于 &amp;lt;Esc&amp;gt; 退出键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+C              &lt;span class=&#34;c1&#34;&gt;# 退出插入模式，等价于 &amp;lt;Esc&amp;gt; 和 Ctrl+[，但不检查缩写&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;插入模式的命令&#34;&gt;
    &lt;a href=&#34;#%e6%8f%92%e5%85%a5%e6%a8%a1%e5%bc%8f%e7%9a%84%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    插入模式的命令
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;注意：由 i, I, a, A, o, O, s, S 等命令进入插入模式。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Up&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 光标向上移动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Down&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 光标向下移动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Left&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 光标向左移动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Right&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 光标向右移动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Up&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Up&amp;gt; 方向键，向上翻页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Down&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Down&amp;gt; 方向键，向下翻页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Left&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Left&amp;gt; 方向键，向左移动一个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S+Right&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 按住 &amp;lt;Shift&amp;gt; 上档键再按 &amp;lt;Right&amp;gt; 方向键，向右移动一个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;PageUp&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 向上翻页，&amp;lt;PageUp&amp;gt; 是向上翻页键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;PageDown&amp;gt;          &lt;span class=&#34;c1&#34;&gt;# 向下翻页，&amp;lt;PageDown&amp;gt; 是向下翻页键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Delete&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 删除光标处字符，&amp;lt;Delete&amp;gt; 是删除键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Backspace&amp;gt;         &lt;span class=&#34;c1&#34;&gt;# 退格键 &amp;lt;Backspace&amp;gt; 向后删除字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Home&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 光标跳转行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;End&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 光标跳转行尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+d              &lt;span class=&#34;c1&#34;&gt;# 减少缩进光标所在行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+f              &lt;span class=&#34;c1&#34;&gt;# 自动缩进光标所在行（相当于普通模式下的 `==` ）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+t              &lt;span class=&#34;c1&#34;&gt;# 增加缩进光标所在行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+h              &lt;span class=&#34;c1&#34;&gt;# 删除前一个字符，等价于 &amp;lt;Backspace&amp;gt; 退格键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+o              &lt;span class=&#34;c1&#34;&gt;# 临时退出插入模式，执行单条命令又返回插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+u              &lt;span class=&#34;c1&#34;&gt;# 当前行删除到行首所有字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+w              &lt;span class=&#34;c1&#34;&gt;# 删除光标前的一个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+&lt;span class=&#34;se&#34;&gt;\ &lt;/span&gt;Ctrl+O       &lt;span class=&#34;c1&#34;&gt;# 临时退出插入模式（光标保持），执行单条命令又返回插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+R &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 插入寄存器（内部 0 号剪贴板）内容，Ctrl+R 后可跟寄存器名&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+R &lt;span class=&#34;s2&#34;&gt;&amp;#34;            # 插入匿名寄存器内容，相当于插入模式下 p 粘贴
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+R =            # 插入表达式计算结果，等号后面跟表达式
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+R :            # 插入上一次命令行命令
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+R /            # 插入上一次搜索的关键字
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v {char}       # 插入非数字的字面量
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v {code}       # 插入用三位数字表示的 ASCII/Unicode 字符编码，例如 Ctrl+v 065
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v 065          # 插入 10 进制 ASCII 字符（两数字） 065 即 A 字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v x41          # 插入 16 进制 ASCII 字符（三数字） x41 即 A 字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v o101         # 插入 8 进制 ASCII 字符（三数字） o101 即 A 字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v u1234        # 插入 16 进制 Unicode 字符（四数字）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+v U12345678    # 插入 16 进制 Unicode 字符（八数字）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+K {ch1} {ch2}  # 插入 digraph（见 :h digraph），快速输入日文或符号等&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;自动补全&#34;&gt;
    &lt;a href=&#34;#%e8%87%aa%e5%8a%a8%e8%a1%a5%e5%85%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    自动补全
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+n              &lt;span class=&#34;c1&#34;&gt;# 插入模式下文字自动补全，最常用的补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+P              &lt;span class=&#34;c1&#34;&gt;# 插入模式下文字自动补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+e              &lt;span class=&#34;c1&#34;&gt;# 有补全列表时，终止这次补全，继续输入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X              &lt;span class=&#34;c1&#34;&gt;# 进入补全模式，注意：智能补全命令均以组合键 Ctrl+X 作为起始操作，下同&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+L       &lt;span class=&#34;c1&#34;&gt;# 补全整行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+N       &lt;span class=&#34;c1&#34;&gt;# 插入模式下根据当前缓冲区关键字补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+K       &lt;span class=&#34;c1&#34;&gt;# 根据字典补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+T       &lt;span class=&#34;c1&#34;&gt;# 根据同义词字典补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+F       &lt;span class=&#34;c1&#34;&gt;# 插入模式下补全文件名&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+I       &lt;span class=&#34;c1&#34;&gt;# 根据头文件内关键字补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 标签文件关键词补全&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+D       &lt;span class=&#34;c1&#34;&gt;# 补全宏定义&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+V       &lt;span class=&#34;c1&#34;&gt;# 补全 Vim 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+U       &lt;span class=&#34;c1&#34;&gt;# 用户自定义补全方式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+S       &lt;span class=&#34;c1&#34;&gt;# 拼写建议，例如：一个英文单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+O       &lt;span class=&#34;c1&#34;&gt;# 插入模式下全能 Omnifunc 补全&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文本编辑&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e6%9c%ac%e7%bc%96%e8%be%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文本编辑
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-55&#34;&gt;55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-56&#34;&gt;56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-57&#34;&gt;57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-58&#34;&gt;58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-59&#34;&gt;59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-60&#34;&gt;60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-61&#34;&gt;61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-62&#34;&gt;62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-63&#34;&gt;63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-64&#34;&gt;64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-65&#34;&gt;65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-66&#34;&gt;66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-67&#34;&gt;67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-68&#34;&gt;68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-69&#34;&gt;69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-70&#34;&gt;70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-71&#34;&gt;71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-72&#34;&gt;72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-73&#34;&gt;73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-74&#34;&gt;74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-75&#34;&gt;75&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;r                   &lt;span class=&#34;c1&#34;&gt;# 替换当前字符（r: replace）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;R                   &lt;span class=&#34;c1&#34;&gt;# 进入替换模式，直至按 &amp;lt;Esc&amp;gt; 退出键离开&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;s                &lt;span class=&#34;c1&#34;&gt;# 替换 N 个字符，即删除光标后 N 个字符并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;S                &lt;span class=&#34;c1&#34;&gt;# 替换 N 行，即删除 N 行并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;x                &lt;span class=&#34;c1&#34;&gt;# 剪切、删除光标右边 N 个字符，相当于d[N]l&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;n&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;X                &lt;span class=&#34;c1&#34;&gt;# 剪切、删除光标左边 N 个字符，相当于d[n]h&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cc                  &lt;span class=&#34;c1&#34;&gt;# 改写当前行，即删除当前行并进入插入模式，等价于 S&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cw                  &lt;span class=&#34;c1&#34;&gt;# 改写光标开始处的当前单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ciw                 &lt;span class=&#34;c1&#34;&gt;# 改写光标所处的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;caw                 &lt;span class=&#34;c1&#34;&gt;# 改写光标所处的单词，并且包括前后空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;c0                  &lt;span class=&#34;c1&#34;&gt;# 改写到行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;c^                  &lt;span class=&#34;c1&#34;&gt;# 改写到行首非空字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;c$                  &lt;span class=&#34;c1&#34;&gt;# 改写到行末&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;C                   &lt;span class=&#34;c1&#34;&gt;# 改写到行尾，等价于 c$&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ci&lt;span class=&#34;s2&#34;&gt;&amp;#34;                 # 改写双引号中的内容，i 的含义下同（i: inner）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ci&amp;#39;                 # 改写单引号中的内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;cib                 # 改写小括号中的内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;cab                 # 改写小括号中的内容，包含小括号本身
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ci)                 # 改写小括号中的内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ci]                 # 改写中括号中内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ciB                 # 改写大括号中内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;caB                 # 改写大括号中的内容，包含大括号本身
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ci}                 # 改写大括号中内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;cit                 # 改写 XML 中 tag 的内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;cis                 # 改写当前句子
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;c[N]w               # 改写光标后 N 个单词
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;c[N]l               # 改写光标后 N 个字母
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;c[N]h               # 改写光标前 N 个字母
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;[N]cc               # 修改当前 N 行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ct(                 # 改写到小括号前
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;dd                  # 删除（剪切）当前行，当前行会存到寄存器里（d: delete = cut）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;dd[N]p              # 删除（剪切）当前行并加入 N-1 个当前行，复制空行时很有用
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d0                  # 删除（剪切）到行首
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d^                  # 删除（剪切）到行首非零字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d&lt;/span&gt;$&lt;span class=&#34;s2&#34;&gt;                  # 删除（剪切）到行末
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;D                   # 删除（剪切）到行末，等价于 d&lt;/span&gt;$&lt;span class=&#34;s2&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;dw                  # 删除（剪切）当前单词
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;diw                 # 删除（剪切）光标所处的单词（iw: inner word）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;daw                 # 删除（剪切）光标所处的单词，并包含前后空格
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d2w                 # 删除（剪切）下 2 个单词
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d[N]w               # 删除（剪切）N 个单词，并包含前后空格
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d[N]l               # 删除（剪切）光标右边 N 个字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;d[N]h               # 删除（剪切）光标左边 N 个字符
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;[N]dd               # 删除（剪切）从当前行开始的 N 行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;:Nd                 # 删除（剪切）第 N 行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;:N,Md&amp;lt;CR&amp;gt;           # 删除（剪切） N ~ M 行，其中 &amp;lt;CR&amp;gt; 为 &amp;lt;Enter&amp;gt; 回车键
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;di&amp;#34;&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）双引号中的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;di&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）单引号中的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dib                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）小括号中的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;di&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）小括号中的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dab                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）小括号内的内容，包含小括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;di&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）中括号中内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;diB                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）大括号中内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;di&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）大括号中内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;daB                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）大括号内的内容，包含大括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dit                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切） XML 中 tag 的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dis                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）当前句子&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dt&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）到小括号前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dgg                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）到文件头部&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;d1G                 &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）到文件头部，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;dG                  &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）到文件尾部&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;d&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）下一个段落&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;d&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）上一个段落&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;d/f&amp;lt;CR&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 比较高级的组合命令，它将删除 当前位置 到下一个字母 f 之间的内容，其中 &amp;lt;CR&amp;gt; 为 &amp;lt;Enter&amp;gt; 回车键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;~                   &lt;span class=&#34;c1&#34;&gt;# 转换大小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g~iw                &lt;span class=&#34;c1&#34;&gt;# 替换当前单词的大小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gUiw                &lt;span class=&#34;c1&#34;&gt;# 将单词转成大写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;guiw                &lt;span class=&#34;c1&#34;&gt;# 将当前单词转成小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;guu                 &lt;span class=&#34;c1&#34;&gt;# 全行转为小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gUU                 &lt;span class=&#34;c1&#34;&gt;# 全行转为大写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+A              &lt;span class=&#34;c1&#34;&gt;# 增加数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X              &lt;span class=&#34;c1&#34;&gt;# 减少数字&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文本对象&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e6%9c%ac%e5%af%b9%e8%b1%a1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文本对象
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;注意&lt;/strong&gt;：只适用于可视模式或在操作符后，例如：操作包括 &lt;strong&gt;选择 v、删除 d、复制 y、修改 c&lt;/strong&gt; 等。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aw                  &lt;span class=&#34;c1&#34;&gt;# 操作整个单词，不包括分隔符（aw: a word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aW                  &lt;span class=&#34;c1&#34;&gt;# 操作整个单词，包括分隔符（aW: a Word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;iw                  &lt;span class=&#34;c1&#34;&gt;# 操作整个单词，不包括分隔符（iw: inner word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;iW                  &lt;span class=&#34;c1&#34;&gt;# 操作整个单词，包括分隔符（iW: inner Word）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;is                  &lt;span class=&#34;c1&#34;&gt;# 操作整个句子，不包括分隔符 (s: sentence）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ib                  &lt;span class=&#34;c1&#34;&gt;# 操作内含块，从 [( 到 ])（b: block）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;iB                  &lt;span class=&#34;c1&#34;&gt;# 操作内含大块，从 [{ 到 ]} （B: Block）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ab                  &lt;span class=&#34;c1&#34;&gt;# 操作一个块，从 [( 至 ])（b: block）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;aB                  &lt;span class=&#34;c1&#34;&gt;# 操作一个大块，从 [{ 到 ]}（B: Block）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ap                  &lt;span class=&#34;c1&#34;&gt;# 操作一个段落（p: paragraph）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ip                  &lt;span class=&#34;c1&#34;&gt;# 操作内含段落&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作小括号字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作小括号字符串，包含小括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作中括号字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作中括号字符串，包含中括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作大括号字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作大括号字符串，包含大括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;s1&#34;&gt;&amp;#39;                  # 操作单引号字符串
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;a&amp;#39;&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作单引号字符串，包含单引号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;s2&#34;&gt;&amp;#34;                  # 操作双引号字符串
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;a&amp;#34;&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作双引号字符串，包含双引号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作一个反引号字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作内含反引号字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;a&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作一个 &amp;lt;&amp;gt; 块&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;i&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 操作内含 &amp;lt;&amp;gt; 块&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;at                  &lt;span class=&#34;c1&#34;&gt;# 操作一个标签块，例如 从 &amp;lt;aaa&amp;gt; 到 &amp;lt;/aaa&amp;gt;（t: tag）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;it                  &lt;span class=&#34;c1&#34;&gt;# 操作内含标签块，例如 从 &amp;lt;aaa&amp;gt; 到 &amp;lt;/aaa&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2i&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 操作往外两层小括号内&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;2a&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 操作往外两层小括号内，包含小括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;f&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 移动到第 N 个小括号处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 移动到第 N 个小括号前&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;文本对象的配对括号、标点及配对标点内的内容的编辑修改对编程非常实用，可以简单总结为。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ci&lt;span class=&#34;s1&#34;&gt;&amp;#39;、ci&amp;#34;、ci(、ci[、ci{、ci&amp;lt;                # 分别修改这些配对标点符号中的文本内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;ca&amp;#39;&lt;/span&gt;、ca&lt;span class=&#34;s2&#34;&gt;&amp;#34;、ca(、ca[、ca{、ca&amp;lt;                # 分别修改这些配对标点符号中的文本内容，包括 标点符号 本身
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;di&amp;#39;、di&amp;#34;&lt;/span&gt;、di&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;、dib、di&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;、di&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;、diB、di&amp;lt;       &lt;span class=&#34;c1&#34;&gt;# 分别删除这些配对标点符号中的文本内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;da&lt;span class=&#34;s1&#34;&gt;&amp;#39;、da&amp;#34;、da(、dab、da[、da{、daB、da&amp;lt;       # 分别删除这些配对标点符号中的文本内容，包括 标点符号 本身
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;yi&amp;#39;&lt;/span&gt;、yi&lt;span class=&#34;s2&#34;&gt;&amp;#34;、yi(、yi[、yi{、yi&amp;lt;                # 分别复制这些配对标点符号中的文本内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;ya&amp;#39;、ya&amp;#34;&lt;/span&gt;、ya&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;、ya&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;、ya&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;、ya&amp;lt;                &lt;span class=&#34;c1&#34;&gt;# 分别复制这些配对标点符号中的文本内容，包括 标点符号 本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vi&lt;span class=&#34;s1&#34;&gt;&amp;#39;、vi&amp;#34;、vi(、vi[、vi{、vi&amp;lt;                # 分别选中这些配对标点符号中的文本内容
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;va&amp;#39;&lt;/span&gt;、va&lt;span class=&#34;s2&#34;&gt;&amp;#34;、va(、va[、va{、va&amp;lt;                # 分别选中这些配对标点符号中的文本内容，包括 标点符号 本身&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;移动文本&#34;&gt;
    &lt;a href=&#34;#%e7%a7%bb%e5%8a%a8%e6%96%87%e6%9c%ac&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    移动文本
&lt;/h2&gt;&lt;p&gt;移动文本命令格式。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;m&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ove&lt;span class=&#34;o&#34;&gt;]{&lt;/span&gt;address&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[range]：表示要移动的行范围。&lt;/li&gt;
&lt;li&gt;{address}：表示移动的目标位置，这两个参数都可以缺省。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:m+1                &lt;span class=&#34;c1&#34;&gt;# 下移 1 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:m-2                &lt;span class=&#34;c1&#34;&gt;# 上移 1 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:8,10m2             &lt;span class=&#34;c1&#34;&gt;# 把当前打开文件的第 8~10 行内容移动到第 2 行下方&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:8,10m+2             &lt;span class=&#34;c1&#34;&gt;# 把当前打开文件的第 8~10 行内容移动到光标下面第 2 行下方&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## 选区上下移动 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&amp;lt;C-u&amp;gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;,&amp;#39;&lt;/span&gt;&amp;gt;m &lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;gt;+1&amp;lt;CR&amp;gt;gv   # 整体向下移动一行;   
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;:&amp;lt;C-u&amp;gt;&amp;#39;&lt;/span&gt;&amp;lt;,&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;gt;m &amp;#39;&lt;/span&gt;&amp;lt;-2&amp;lt;CR&amp;gt;gv   &lt;span class=&#34;c1&#34;&gt;# 整体向上移动一行&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文字排版&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e5%ad%97%e6%8e%92%e7%89%88&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文字排版
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&amp;gt;&amp;gt;                     &lt;span class=&#34;c1&#34;&gt;# 向右缩进 N 行，单位为 shiftwidth&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&amp;lt;&amp;lt;                     &lt;span class=&#34;c1&#34;&gt;# 向左缩进 N 行，单位为 shiftwidth&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ce&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;nter&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 本行文字居中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:le&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ft&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 本行文字靠左&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ri&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ght&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 本行文字靠右&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;ce&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;nter&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;width&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 在 range 范围行的文字居中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;le&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ft&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;indent&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 在 range 范围行的行文字靠左&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;ri&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ght&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;width&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 在 range 范围行的行文字靠右&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gq                        &lt;span class=&#34;c1&#34;&gt;# 对选中的文字重排，即对过长文字进行断行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gqq                       &lt;span class=&#34;c1&#34;&gt;# 重排当前行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gq&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;q                    &lt;span class=&#34;c1&#34;&gt;# 重排 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gqap                      &lt;span class=&#34;c1&#34;&gt;# 重排当前段落&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gq&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;ap                   &lt;span class=&#34;c1&#34;&gt;# 重排 N 个段落&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gq&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;j                    &lt;span class=&#34;c1&#34;&gt;# 重排当前行和下面 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gqQ                       &lt;span class=&#34;c1&#34;&gt;# 重排当前段落到文章末尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;J                         &lt;span class=&#34;c1&#34;&gt;# 将多行合并为一行,行与行之间会加空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gJ                        &lt;span class=&#34;c1&#34;&gt;# 将多行合并为一行，行与行之间不加空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;                        &lt;span class=&#34;c1&#34;&gt;# 自动缩进，当前文件所有行自动缩进对齐使用 gg=G&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;复制粘贴&#34;&gt;
    &lt;a href=&#34;#%e5%a4%8d%e5%88%b6%e7%b2%98%e8%b4%b4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    复制粘贴
&lt;/h2&gt;&lt;p&gt;复制命令的格式。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;co&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;py&lt;span class=&#34;o&#34;&gt;]{&lt;/span&gt;address&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[range]：表示要复制的行范围，其中 copy 可缩写为 :co 或 :t。&lt;/li&gt;
&lt;li&gt;{address}：表示复制的目标位置，这两个参数都可以缺省，用于表示 Vim 光标所在当前行。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:3copy.             &lt;span class=&#34;c1&#34;&gt;# 复制文件的第 3 行到当前行（当前行用 . 表示）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:3,5t.              &lt;span class=&#34;c1&#34;&gt;# 把第 3 行到第 5 行的内容复制到当前行下方&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:t5                 &lt;span class=&#34;c1&#34;&gt;# 把当前行复制到第 5 行下方&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:t.                 &lt;span class=&#34;c1&#34;&gt;# 复制当前行到当前行下方，等价于普通模式下的 yyp&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:t$                 &lt;span class=&#34;c1&#34;&gt;# 把当前行复制到文本结尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;lt;,&amp;#39;&lt;/span&gt;&amp;gt;t0            &lt;span class=&#34;c1&#34;&gt;# 把高亮选中的行复制到文件开头&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;常用复制粘贴命令。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;p                   &lt;span class=&#34;c1&#34;&gt;# 粘贴到光标后（p: paste）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;P                   &lt;span class=&#34;c1&#34;&gt;# 粘贴到光标前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y                   &lt;span class=&#34;c1&#34;&gt;# 复制标记内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y0                  &lt;span class=&#34;c1&#34;&gt;# 复制当前光标位置到行首的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y$                  &lt;span class=&#34;c1&#34;&gt;# 复制当前位置到本行结束的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yy                  &lt;span class=&#34;c1&#34;&gt;# 复制当前行（Yank (copy) a line ）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Y                   &lt;span class=&#34;c1&#34;&gt;# 复制当前行，等价于 yy&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yiw                 &lt;span class=&#34;c1&#34;&gt;# 复制当前单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;w               &lt;span class=&#34;c1&#34;&gt;# 复制 N 个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;s               &lt;span class=&#34;c1&#34;&gt;# 复制 N 个句子&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;yy               &lt;span class=&#34;c1&#34;&gt;# 复制光标下 N 行内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ygg                 &lt;span class=&#34;c1&#34;&gt;# 复制光标以上的所有行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;y1G                 &lt;span class=&#34;c1&#34;&gt;# 复制光标以上的所有行，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yG                  &lt;span class=&#34;c1&#34;&gt;# 复制光标以下的所有行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;yypVr&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 复制字符并替换为等长指定字符，Markdown 编辑时尤为好用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;y           &lt;span class=&#34;c1&#34;&gt;# 复制范围，例如 :20,30y 是复制 20 到 30 行，:10y 是复制第 10 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;d           &lt;span class=&#34;c1&#34;&gt;# 删除范围，例如 :20,30d 是删除（剪切） 20 到 30 行，:10d 是删除（剪切）第 10 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;_[command]         # 使用 [command] 删除内容，并且不进行复制（不会污染寄存器）
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;*&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;command&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 使用 [command] 复制内容到系统剪贴板（需要 Vim 版本有 clipboard 支持）&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;撤销与恢复&#34;&gt;
    &lt;a href=&#34;#%e6%92%a4%e9%94%80%e4%b8%8e%e6%81%a2%e5%a4%8d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    撤销与恢复
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;u                &lt;span class=&#34;c1&#34;&gt;# 撤销命令，N 为任意整数，表示撤销 N 步操作，下同（u: undo）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;U                &lt;span class=&#34;c1&#34;&gt;# 撤销整行操作，N 为任意整数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+r              &lt;span class=&#34;c1&#34;&gt;# 撤销上一次 u 命令（r: redo）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+R              &lt;span class=&#34;c1&#34;&gt;# 回退前一个命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:earlier &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;s       &lt;span class=&#34;c1&#34;&gt;# 回退到 N 秒前的文件内容，其中 s 可替换为 m（分）、h（小时）、d（天）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:later &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;s         &lt;span class=&#34;c1&#34;&gt;# 前进 N 秒，其中 s 可替换为 m（分）、h（小时）、d（天）&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;查找替换&#34;&gt;
    &lt;a href=&#34;#%e6%9f%a5%e6%89%be%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    查找替换
&lt;/h2&gt;&lt;h3 id=&#34;查找命令&#34;&gt;
    &lt;a href=&#34;#%e6%9f%a5%e6%89%be%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    查找命令
&lt;/h3&gt;&lt;p&gt;普通（Normal）模式下的查找命令（注意：Esc 退出键可以中止大部分命令）。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/pattern            &lt;span class=&#34;c1&#34;&gt;# 从光标处向文件尾搜索 pattern&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;?pattern            &lt;span class=&#34;c1&#34;&gt;# 从光标处向文件头搜索 pattern&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;n                   &lt;span class=&#34;c1&#34;&gt;# 向同一方向执行上一次搜索&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N                   &lt;span class=&#34;c1&#34;&gt;# 向相反方向执行上一次搜索&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;%                   &lt;span class=&#34;c1&#34;&gt;# 匹配括号移动，包括 ()，{}，[]。结合以下两个命令相当强大。前提：需要把光标先移到括号上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;*                   &lt;span class=&#34;c1&#34;&gt;# 向后搜索光标所在的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g*									&lt;span class=&#34;c1&#34;&gt;# 与*类似,但是不严格按照单词来分界;`aaa bbb`的aaa上用g* 能搜索到 aaaacccc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#                   # 向前搜索光标所在的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g# 									&lt;span class=&#34;c1&#34;&gt;# 与#类似,但是不严格按照单词来分界;`aaa bbb`的aaa上用g* 能搜索到 aaaacccc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Shift&amp;gt;*            &lt;span class=&#34;c1&#34;&gt;# 搜索光标所在位置的字符串，不用输入字符串，查询速度比 /pattern 快&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;f&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向后搜索当前行第一个为 {char} 的字符，Nfv 可以找到第 N 个为 v 字符，下同（f: find）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;F&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向前搜索当前行第一个为 {char} 的字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;t&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向后搜索当前行第一个为 {char} 的字符前（t: to）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;T&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;char&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 向前搜索当前行第一个为 {char} 的字符前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 重复上次的字符查找命令（f/t 命令）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;,                   &lt;span class=&#34;c1&#34;&gt;# 反转方向查找上次的字符查找命令（f/t 命令）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tx                  &lt;span class=&#34;c1&#34;&gt;# 搜索当前行到指定 字符串 之前&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;fx                  &lt;span class=&#34;c1&#34;&gt;# 搜索当前行到指定 字符串 之处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 放弃查找。例如，启动了 f 命令后发现想用的是 F 命令，&amp;lt;Esc&amp;gt; 退出键放弃查找&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;substitute-命令替换&#34;&gt;
    &lt;a href=&#34;#substitute-%e5%91%bd%e4%bb%a4%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    substitute 命令替换
&lt;/h3&gt;&lt;p&gt;普通（Normal）模式下的替换命令格式。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;s&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ubstitute&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;/&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;pattern&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;/&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;string&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;/&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;flags&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;{pattern}：就是要被替换掉的字串，可以用 regexp 來表示。&lt;/li&gt;
&lt;li&gt;{string}：將 pattern 由 string 所取代。&lt;/li&gt;
&lt;li&gt;[range]：有以下一些取值。&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;[range]取值&lt;/th&gt;
          &lt;th&gt;含义&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;无&lt;/td&gt;
          &lt;td&gt;默认光标所在行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;.&lt;/td&gt;
          &lt;td&gt;光标所在当前行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;N&lt;/td&gt;
          &lt;td&gt;第 N 行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;$&lt;/td&gt;
          &lt;td&gt;最后一行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lsquo;a&lt;/td&gt;
          &lt;td&gt;标记 a 所在的行（之前要用 ma 做过标记）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;$-1&lt;/td&gt;
          &lt;td&gt;倒数第二行，可以对某一行加减某个数值获得确定的某行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1,10&lt;/td&gt;
          &lt;td&gt;第 1~10 行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1,$&lt;/td&gt;
          &lt;td&gt;第一行到最后一行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;1,.&lt;/td&gt;
          &lt;td&gt;第一行到当前行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;.,$&lt;/td&gt;
          &lt;td&gt;当前行到最后一行&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lsquo;a,&amp;lsquo;b&lt;/td&gt;
          &lt;td&gt;标记 a 所在的行 到 标记 b 所在的行（之前要用 ma、mb 做过标记）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;%&lt;/td&gt;
          &lt;td&gt;所有行（和 1，$ 等价）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;?str?&lt;/td&gt;
          &lt;td&gt;从当前位置向上搜索，找到第一个 str 的行（str 可以是正则）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;/str/&lt;/td&gt;
          &lt;td&gt;从当前位置向下搜索，找到第一个 str 的行（str 可以是正则）&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;注意&lt;/strong&gt;：上面的所有用于 range 的表示方法都可以通过 +、- 操作来设置相对偏移量。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[flags]有以下一些取值：&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;[flags]取值&lt;/th&gt;
          &lt;th&gt;含义&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;g&lt;/td&gt;
          &lt;td&gt;对指定范围内的所有匹配项（g: global）进行替换&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;c&lt;/td&gt;
          &lt;td&gt;在替换前请求用户进行确认（c: confirm）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;e&lt;/td&gt;
          &lt;td&gt;忽略执行过程中的错误（e: error）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;i&lt;/td&gt;
          &lt;td&gt;不区分大小写（i: ignore）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;无&lt;/td&gt;
          &lt;td&gt;只在指定范围内的第一个匹配项进行替换&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;举例：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;                        &lt;span class=&#34;c1&#34;&gt;# 重复上一次 substitute 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:s/old/new/               &lt;span class=&#34;c1&#34;&gt;# 当前行的第一个 old 替换为 new&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:s/old/new/g              &lt;span class=&#34;c1&#34;&gt;# 当前行的 old 全部替换为 new&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:s/old/&lt;span class=&#34;se&#34;&gt;\U&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;/               &lt;span class=&#34;c1&#34;&gt;# 当前行的 old 替换为大写的 OLD&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N,Ms/old/new/g           &lt;span class=&#34;c1&#34;&gt;# 将第 N~M 行中所有的 old 全部替换为 new&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/old/new/g             &lt;span class=&#34;c1&#34;&gt;# 当前文件中的 old 全部替换为 new&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/old/new/gc            &lt;span class=&#34;c1&#34;&gt;# 将当前文件中的 old 全部替换为 new，并且每处询问你是否替换&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^/xxx/g               &lt;span class=&#34;c1&#34;&gt;# 在每行行首插入 xxx，^ 表示行首，注释时非常有用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/./# &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 在非空行的行首添加注释，&amp;amp; 代表前边匹配到非空行字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/$/xxx/g               &lt;span class=&#34;c1&#34;&gt;# 在每行行尾插入 xxx，$ 表示行尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/hello/&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;, world/       &lt;span class=&#34;c1&#34;&gt;# 将会把 hello 替换成 hello, wolrd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/.*/&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;/               &lt;span class=&#34;c1&#34;&gt;# 将会把所有行用 () 包含起来&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/&lt;span class=&#34;se&#34;&gt;\s\+&lt;/span&gt;$//e              &lt;span class=&#34;c1&#34;&gt;# 删除每行末尾的空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/1&lt;span class=&#34;se&#34;&gt;\\&lt;/span&gt;2&lt;span class=&#34;se&#34;&gt;\/&lt;/span&gt;3/123/g         &lt;span class=&#34;c1&#34;&gt;# 将 &amp;#34;1\2/3&amp;#34; 替换为 &amp;#34;123&amp;#34;，特殊字符使用反斜杠标注&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/&lt;span class=&#34;se&#34;&gt;\r&lt;/span&gt;//g                 &lt;span class=&#34;c1&#34;&gt;# 删除 DOS 换行符 ^M&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s///gn                  &lt;span class=&#34;c1&#34;&gt;# 统计某个模式的匹配个数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;$//gc/             &lt;span class=&#34;c1&#34;&gt;# 替换多个空行为一个空行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;/&lt;span class=&#34;se&#34;&gt;\r\r&lt;/span&gt;/              &lt;span class=&#34;c1&#34;&gt;# 每行后加入空行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^&lt;span class=&#34;se&#34;&gt;\s&lt;/span&gt;*$&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;//g            &lt;span class=&#34;c1&#34;&gt;# 删除所有空白行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^M$//g                &lt;span class=&#34;c1&#34;&gt;# 删除文件中显式的 ^M 符号，即操作系统换行符问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/_&lt;span class=&#34;se&#34;&gt;\(\w\)&lt;/span&gt;/&lt;span class=&#34;se&#34;&gt;\u\1&lt;/span&gt;/g        &lt;span class=&#34;c1&#34;&gt;# 将下划线转为驼峰式写法&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^&lt;span class=&#34;se&#34;&gt;\(\w\)&lt;/span&gt;/&lt;span class=&#34;se&#34;&gt;\L\1&lt;/span&gt;/g        &lt;span class=&#34;c1&#34;&gt;# 将首字母大写的切换成小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; s&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ubstitute&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 查看 substitute 替换命令的帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;global-命令替换&#34;&gt;
    &lt;a href=&#34;#global-%e5%91%bd%e4%bb%a4%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    global 命令替换
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;还有一种比替换更灵活的方式，它允许匹配到某个指定模式后执行指定的 Ex 命令，即 Vim 的 global 命令，其处理重复工作的效率极高。其命令格式为：&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;g&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lobal&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;/&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;pattern&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;/&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;cmd&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;[range]：表示操作范围，:global 命令的默认作用范围是整个文件 (用 % 表示)。 操作范围参考上面的 [range] 取值。&lt;/li&gt;
&lt;li&gt;[!]：表示反转 :global 命令的行为，将在没有匹配到指定模式的行上执行 cmd。&lt;/li&gt;
&lt;li&gt;{pattern}：指定 :global 命令要匹配的目标模式，若将该域留空，Vim 会自动使用当前(最近一次)的查找模式。&lt;/li&gt;
&lt;li&gt;[cmd]：除 :global 命令之外的任何 Ex 命令，Vim 缺省使用 :print 命令，缩写为 :p。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/pattern                  &lt;span class=&#34;c1&#34;&gt;# 查找并显示文件中所有包含模式 pattern 的行，并移动到最后一个匹配处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/pattern/p                &lt;span class=&#34;c1&#34;&gt;# 查找并显示文件中所有包含模式 pattern 的行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/&lt;span class=&#34;se&#34;&gt;\&amp;lt;&lt;/span&gt;pattern&lt;span class=&#34;se&#34;&gt;\&amp;gt;&lt;/span&gt;/p            &lt;span class=&#34;c1&#34;&gt;# 查找并显示文件中所有精确匹配单词 pattern 的行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g!/pattern/nu              &lt;span class=&#34;c1&#34;&gt;# 查找并显示文件中所有不包含模式 pattern 的行，并显示这些行号&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:v/pattern/d                &lt;span class=&#34;c1&#34;&gt;# 删除所有不包含 pattern 的行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/.*/m0                    &lt;span class=&#34;c1&#34;&gt;# 将所有的行按相反的顺序排列。其中，查找模式 .* 将匹配所有行，m0 命令将每一行移动到 0 行之后&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/^/t.                     &lt;span class=&#34;c1&#34;&gt;# 重复每一行，其中 :t 或 :copy 为复制命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/^/+1 d                   &lt;span class=&#34;c1&#34;&gt;# 删除偶数行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/^/d&lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;m.                   &lt;span class=&#34;c1&#34;&gt;# 删除奇数行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/^$/d                     &lt;span class=&#34;c1&#34;&gt;# 删除所有空白行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/^&lt;span class=&#34;se&#34;&gt;\s&lt;/span&gt;*$/d                  &lt;span class=&#34;c1&#34;&gt;# 删除所有空白行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:v/./d                      &lt;span class=&#34;c1&#34;&gt;# 删除所有空白行，其中 . 用于匹配除换行符 \n 外的任何单字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/pattern/d_               &lt;span class=&#34;c1&#34;&gt;# 删除大量匹配行，避免花费不必要的时间拷贝匹配行至默认寄存器，可以指定黑洞寄存器 _&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N,Mg/pattern/p             &lt;span class=&#34;c1&#34;&gt;# 查找并显示第 N 到 M 行之间所有包含模式 pattern 的行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%g/^ xyz/normal dd         &lt;span class=&#34;c1&#34;&gt;# 表示对于以一个空格和 xyz 开头的行，执行 Normal 模式下的 dd 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:g/.&lt;span class=&#34;se&#34;&gt;\n\n\@&lt;/span&gt;!/norm o          &lt;span class=&#34;c1&#34;&gt;# 非空行每行后加入空行，且多个空行合并为一个空行，\n 末尾匹配换行符，\n\@! 表示 \n 紧接着 \n，则匹配失败&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; :g&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lobal&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 查看 global 命令的帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;特别说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;substitute 与 global 形式很相似，都是要进行查找匹配，但 substitute 执行的是替换，而 global 执行的其它命令。&lt;/li&gt;
&lt;li&gt;global 命令实际上是分成两步执行：首先扫描 [range] 指定范围内的所有行，给匹配 {pattern} 的行打上标记；然后依次对打有标记的行执行 [cmd] 命令，如果被标记的行在对之前匹配行的命令操作中被删除、移动或合并，则其标记自动消失，而不对该行执行 [cmd] 命令。例子可以参考上面的奇数行、偶数行删除命令！&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;正则替换&#34;&gt;
    &lt;a href=&#34;#%e6%ad%a3%e5%88%99%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    正则替换
&lt;/h3&gt;&lt;blockquote&gt;
&lt;p&gt;高级的查找替换要用到正则表达式。详情可以查看下面的 正则表达式 命令的帮助文档。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; pattern    &lt;span class=&#34;c1&#34;&gt;# 查看 正则表达式 的帮助文档获取更多信息&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;注意：以下非 Vim 的命令，只代表正则表达式&lt;/strong&gt;。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                   &lt;span class=&#34;c1&#34;&gt;# ---------------- 表示【目标字符集】的元字符 ---------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;a-z&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 表示匹配方括号中列举的任意一个字符，即匹配 a-z 中的任意一个字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;^a-z&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 表示匹配除 方括号中字符以外 的任意字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;.                  &lt;span class=&#34;c1&#34;&gt;# 等价于 [^\n]，表示匹配 任意一个除换行符 ( \n ) 外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\l&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [a-z]，表示匹配 任意一个小写字母&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\L&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [^a-z]，表示匹配 任意一个除小写字母外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\u&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [A-Z]，表示匹配 任意一个大写字母&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\U&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [^A-Z]，表示匹配 任意一个除大写字母外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\w&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [0-9A-Za-z_]，表示匹配 任意一个单词字母&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\W&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [^0-9A-Za-z_]，表示匹配 任意一个除单词字母外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\d&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [0-9]，表示匹配 任意一个阿拉伯数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\D&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [^0-9]，表示匹配 任意一个除阿拉伯数字外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\x&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [0-9A-Fa-f]，表示匹配 任意一个十六进制数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\X&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 [^0-9A-Fa-f]，表示匹配 任意一个除十六进制数字外的其他字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                   &lt;span class=&#34;c1&#34;&gt;# ---------------- 表示【次数】的元字符 ---------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;*                  &lt;span class=&#34;c1&#34;&gt;# 表示匹配 0 个或者任意个目标字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\+&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 1 个或者任意个目标字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\?&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 0 个或者1个目标字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\{&lt;/span&gt;N,M&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 表示匹配 N~M 个目标字符，即最少匹配 N 个目标字符，最多匹配 M-1 个目标字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\{&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 表示匹配 N 个目标字符，即目标字符需连续出现 N 次&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\{&lt;/span&gt;N,&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 表示匹配 N 任意个目标字符，即最少匹配 N 个目标字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\{&lt;/span&gt;,M&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 表示匹配 0~M 个目标字符，即最多匹配 M-1 个目标字符，也可以不匹配字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                   &lt;span class=&#34;c1&#34;&gt;# ---------------- 表示【位置】的元字符 ---------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;^                  &lt;span class=&#34;c1&#34;&gt;# 表示匹配 输入字符串的开始位置 (行首)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;$                  &lt;span class=&#34;c1&#34;&gt;# 表示匹配 输入字符串的结束位置 (行尾)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\&amp;lt;&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 单词词首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\&amp;gt;&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 单词词尾&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                   &lt;span class=&#34;c1&#34;&gt;# ---------------- 表示【非打印字符】的元字符 ----------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 一个换行符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\r&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 一个回车符 Enter 键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\t&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 一个制表符 Tab 键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\s&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 任意一个空白字符，包括空格、制表符、换页符等&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;se&#34;&gt;\S&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 表示匹配 任意一个非空白字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                   &lt;span class=&#34;c1&#34;&gt;# ---------------- 表示【子模式】的元字符 -------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 任何 () 内部的匹配文本被称为 子匹配，会被自动保存到临时的仓库中以便后续引用，可以用 \1-9 来依次引用子匹配&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;magic-模式&#34;&gt;
    &lt;a href=&#34;#magic-%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    Magic 模式
&lt;/h3&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; /magic     &lt;span class=&#34;c1&#34;&gt;# 查看更多 Magic 模式帮助信息&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Vim 正则表达式可以分为四种模式。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;magic 模式：使用 \m 前缀，其后模式的解释方式为 &amp;lsquo;magic&amp;rsquo; 选项。^，$，.，* 和 [] 等字符含有特殊意义；而 +、?、()、和 {} 等其它字符则按字面意义解释。magic为默认设置，表达式中的\m前缀可以省略。&lt;/li&gt;
&lt;li&gt;no magic 模式：使用 \M 前缀，其后模式的解释方式为 &amp;rsquo;nomagic&amp;rsquo; 选项。除了 ^ 和 $ 之外的特殊字符，都将被视为普通文本。&lt;/li&gt;
&lt;li&gt;very magic 模式：使用 \v 前缀，其后模式中除 &amp;lsquo;0&amp;rsquo;-&amp;lsquo;9&amp;rsquo;，&amp;lsquo;a&amp;rsquo;-&amp;lsquo;z&amp;rsquo;，&amp;lsquo;A&amp;rsquo;-&amp;lsquo;Z&amp;rsquo; 和 &amp;lsquo;_&amp;rsquo; 之外的字符都当作特殊字符解释。&lt;/li&gt;
&lt;li&gt;very nomagic 模式：使用 \V 前缀，其后模式中只有反斜杠（\）具有特殊意义。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;不同模式之间的区别，在于哪些特殊字符需要使用反斜杠（\）进行转义。例如星号（*），在 magic 和 very magic 模式下视为特殊修饰符；而在 no magic 和 very nomagic 模式下则被视为普通字符，必须使用 “*” 恢复其特殊作用。&lt;/p&gt;
&lt;h2 id=&#34;可视模式&#34;&gt;
    &lt;a href=&#34;#%e5%8f%af%e8%a7%86%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    可视模式
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 可视模式下允许选中一块文本区域，并对文本区域进行 &lt;strong&gt;复制 y、剪切 d、删除 d、替换 r、改变大小写&lt;/strong&gt; 等操作。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v                   &lt;span class=&#34;c1&#34;&gt;# 切换到面向字符的可视模式（v: visual）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;V                   &lt;span class=&#34;c1&#34;&gt;# 切换到面向行的可视模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+v              &lt;span class=&#34;c1&#34;&gt;# 切换到面向列块的可视模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;V&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 向右增加缩进&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;V&amp;lt;                  &lt;span class=&#34;c1&#34;&gt;# 向左减少缩进&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v0                  &lt;span class=&#34;c1&#34;&gt;# 选中当前位置到行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v$                  &lt;span class=&#34;c1&#34;&gt;# 选中当前位置到行末&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;viw                 &lt;span class=&#34;c1&#34;&gt;# 选中当前单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vib                 &lt;span class=&#34;c1&#34;&gt;# 选中小括号内的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vi&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中小括号内的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vi&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中中括号内的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;viB                 &lt;span class=&#34;c1&#34;&gt;# 选中大括号内的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vi&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中大括号内的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vis                 &lt;span class=&#34;c1&#34;&gt;# 选中句子中的内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vab                 &lt;span class=&#34;c1&#34;&gt;# 选中小括号内的内容，包含小括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;va&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中小括号内的内容，包含小括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;va&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中中括号内的内容，包含中括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vaB                 &lt;span class=&#34;c1&#34;&gt;# 选中大括号内的内容，包含大括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;va&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 选中大括号内的内容，包含大括号本身&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;wd              &lt;span class=&#34;c1&#34;&gt;# 删除（剪切）选中的 N 个单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;wc              &lt;span class=&#34;c1&#34;&gt;# 修改高亮选中的 N 个单词，并进入插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;v&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;w~              &lt;span class=&#34;c1&#34;&gt;# 高亮选中的 N 个单词转换大小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;visual&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;o           &lt;span class=&#34;c1&#34;&gt;# 跳转到可视模式选中区域的另一端（o: other end）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;visual&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;O           &lt;span class=&#34;c1&#34;&gt;# 跳转到可视模式选中区域的另一端&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;visual&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;u           &lt;span class=&#34;c1&#34;&gt;# 标记区转换为小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;visual&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;U           &lt;span class=&#34;c1&#34;&gt;# 标记区转换为大写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gv                  &lt;span class=&#34;c1&#34;&gt;# 重选上次的高亮选区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g Ctrl+G            &lt;span class=&#34;c1&#34;&gt;# 显示所选择区域的统计信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ggVG                &lt;span class=&#34;c1&#34;&gt;# 选择全文&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 按 &amp;lt;Esc&amp;gt; 退出键退出可视模式&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;注释命令&#34;&gt;
    &lt;a href=&#34;#%e6%b3%a8%e9%87%8a%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    注释命令
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+v              &lt;span class=&#34;c1&#34;&gt;# 多行注释 步骤1：进入命令行模式，按 Ctrl+v 进入可视模式，然后按 j 或者 k 字母键选中多行，把需要注释的行标记起来&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;I                   &lt;span class=&#34;c1&#34;&gt;# 多行注释 步骤2：按大写字母 I 字母键，再插入注释符，例如 #、//&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 多行注释 步骤3：按 &amp;lt;Esc&amp;gt; 退出键就会全部注释了&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+v              &lt;span class=&#34;c1&#34;&gt;# 取消多行注释 步骤1：进入命令模式，按 Ctrl+v 进入可视模式，按 l 字母键横向选中列的个数，例如 #、//，需要选中 2 列&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;j or k              &lt;span class=&#34;c1&#34;&gt;# 取消多行注释 步骤2：按字母 j 或者 k 键移动选中注释符号&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;d                   &lt;span class=&#34;c1&#34;&gt;# 取消多行注释 步骤3：按 d 字母键就可全部取消注释&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;复杂注释。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N,M s/^/ 注释符 /g        &lt;span class=&#34;c1&#34;&gt;# 在指定行 N ~ M 的行首添加注释（注意冒号）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N,M s/^ 注释符 //g        &lt;span class=&#34;c1&#34;&gt;# 在指定行 N ~ M 的行首取消注释（注意冒号）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:3,5 s/^/#/g              &lt;span class=&#34;c1&#34;&gt;# 注释第 3 ~ 5 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:3,5 s/^#//g              &lt;span class=&#34;c1&#34;&gt;# 解除 3 ~ 5 行的注释&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:1,$ s/^/#/g              &lt;span class=&#34;c1&#34;&gt;# 注释整个文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:1,$ s/^#//g              &lt;span class=&#34;c1&#34;&gt;# 取消注释整个文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^/#/g                 &lt;span class=&#34;c1&#34;&gt;# 注释整个文档，此法更快&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%s/^#//g                 &lt;span class=&#34;c1&#34;&gt;# 取消注释整个文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;打开文件&#34;&gt;
    &lt;a href=&#34;#%e6%89%93%e5%bc%80%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    打开文件
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;options&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 启动 Vim 并开启一个空白缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;options&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; ..   &lt;span class=&#34;c1&#34;&gt;# 启动并编辑一个或多个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;options&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -           &lt;span class=&#34;c1&#34;&gt;# 从标准输入读入文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;options&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -t &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;tag&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 编辑与标签 tag 关联的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;options&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -q &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;fname&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 以快速修复模式开始编辑并显示首个错误。options 选项均参考以下&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim .                     &lt;span class=&#34;c1&#34;&gt;# 打开文件管理器，显示目录文件，通过选中文件编辑&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# 打开或新建文件，置于光标第一行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim + &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 打开文件，置光标于最后一行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim +&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 打开文件，置光标于第 N 行首&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -b &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 以二进制模式打开文件，该模式某些特殊字符 如换行符 ^M 都可以显示出来&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -v &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# Vi 模式，以普通模式启动 Ex&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -e &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# Ex 模式，以 Ex 模式启动 vim  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -r &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 恢复上次异常退出的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -R &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 以只读的方式打开文件，但仍然可以使用 :wq! 写入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -M &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 以只读的方式打开文件，不可以强制保存 :wq! 写入 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -x &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 以加密方式打开文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -p &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;files&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 打开多个文件，每个文件占用一个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -o &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;files&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 在水平分割的多个窗口中编辑多个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -O &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;files&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 在垂直分割的多个窗口中编辑多个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -c cmd &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 在打开文件 file 前，先执行指定命令 cmd；vim file.txt -c &amp;#34;e ++enc=UTF-8&amp;#34;：以指定的编码打开 file.txt 文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim +&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;cmd&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 在打开文件 file 后，再执行命令 cmd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim +/string &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 打开文件 file，并将光标停留在第一个匹配的 string 上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -d &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file1&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file2&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 同时打开 file1 和 file2 文件并 diff 两个文件的差异&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;保存退出&#34;&gt;
    &lt;a href=&#34;#%e4%bf%9d%e5%ad%98%e9%80%80%e5%87%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    保存退出
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:w                  &lt;span class=&#34;c1&#34;&gt;# 写入文件并保存，会修改文件的时间戳&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:w&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;rite&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 按名称 file 保存文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:w !sudo tee %      &lt;span class=&#34;c1&#34;&gt;# 以超级用户权限保存文件，也可以这样 :w !sudo tee % &amp;gt; /dev/null&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:wa                 &lt;span class=&#34;c1&#34;&gt;# 保存所有文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:wa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 保存所有文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:wqa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 保存所有文件并退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;wn&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ext&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 保存当前文件，并编辑下 N 个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;wp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;revious&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 保存当前文件，并编辑上 N 个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:q                  &lt;span class=&#34;c1&#34;&gt;# 关闭光标所在的窗口并退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:q&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;uit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 关闭光标所在的窗口并退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:q!                 &lt;span class=&#34;c1&#34;&gt;# 不保存文件并强制退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:qa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 放弃所有文件操作并退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:qa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!            &lt;span class=&#34;c1&#34;&gt;# 放弃所有文件操作并强制退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:x                  &lt;span class=&#34;c1&#34;&gt;# 保存文件并退出，不会修改文件的时间戳&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ZZ                  &lt;span class=&#34;c1&#34;&gt;# 保存已改动的文件，并关闭退出窗口，等价于 :x&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ZQ                  &lt;span class=&#34;c1&#34;&gt;# 不保存文件关闭窗口，等价于 :q!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文件比较&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e6%af%94%e8%be%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件比较
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 的 diff 模式是依赖于 diff 命令的，所以首先保证系统中的 diff 命令是可用的。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vimdiff lfile rfile       &lt;span class=&#34;c1&#34;&gt;# 纵向分割窗口比较文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -d lfile  rfile       &lt;span class=&#34;c1&#34;&gt;# 纵向分割窗口比较文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -d -o lfile rfile     &lt;span class=&#34;c1&#34;&gt;# 横向分割窗口比较文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffs&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 在当前窗口分割，载入另一个文件 file 进行文件比较 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vert diffs &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;        &lt;span class=&#34;c1&#34;&gt;# 在载入文件时要使用纵向分割&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:difft&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;his&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 将当前文件加入 diff&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;atch&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;patchfile&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 将 buffer 中的文件载入当前窗口进行文件比较&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffu&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;pdate&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 文件改动后，刷新 diff&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffu&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;pdate&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!            &lt;span class=&#34;c1&#34;&gt;# 对所有文件更新 diff&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;diffpu&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 指定范围的合并，当前文件的指定范围内容复制到另一个文件里&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;diffg&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;et&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 指定范围的合并，把另一个文件的指定范围内容复制到当前行中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;c                        &lt;span class=&#34;c1&#34;&gt;# 在 diff 中的跳转到下一个不同&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;c                        &lt;span class=&#34;c1&#34;&gt;# 在 diff 中的跳转到上一个不同&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ff&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# 将目前文件退出 diff 模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:diffo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ff&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!               &lt;span class=&#34;c1&#34;&gt;# 将目前窗口中的所有文件退出 diff 模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:qa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 不保存文件修改并退出&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:wa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 保存全部文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:wqa&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ll&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 修改合并后，保存全部文件并退出&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文件操作&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e6%93%8d%e4%bd%9c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件操作
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:e&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 打开文件并编辑，通过文件的绝对或相对路径打开文件，Tab 制表键补全路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:e&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; .           &lt;span class=&#34;c1&#34;&gt;# 打开文件管理器，浏览当前目录下的文件，选中并编辑 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:e&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 重新载入当前文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:e&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!            &lt;span class=&#34;c1&#34;&gt;# 放弃修改，重新回到文件打开时的状态  &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:E&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;xplore&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 打开文件管理器，并显示活动缓冲区所在的目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sav&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;eas&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 另存为指定文件 file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:o &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 在当前窗口打开另一个文件（o: open）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:r &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 读取文件并将内容插入到光标后&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:r !dir             &lt;span class=&#34;c1&#34;&gt;# 将 dir 命令的输出捕获并插入到光标后&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:on&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ly&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 关闭除光标所在的窗口之外的其他窗口，等价于 Ctrl+W o&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:clo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;se&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 关闭光标所在窗口的文件，等价于 Ctrl+W c&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cd &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;path&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 切换 Vim 当前路径至 path&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cd -               &lt;span class=&#34;c1&#34;&gt;# 回到上一次当前目录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:pwd                &lt;span class=&#34;c1&#34;&gt;# 显示 Vim 当前路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:n&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ew&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 打开一个新的窗口编辑新文件 file &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;new             &lt;span class=&#34;c1&#34;&gt;# 打开 N 个新的窗口编辑新文件，N 为任意正整数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ene&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;w&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 在当前窗口创建新文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;vne&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;w&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 纵向切分 N 个新窗口编辑新文件，N 为任意正整数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabnew             &lt;span class=&#34;c1&#34;&gt;# 在新的标签页中编辑新文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:fin&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;d&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 在 path 当中查找文件 file 并编辑&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:f&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ile&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 显示当前文件名及光标位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:f&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ile&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 置当前文件名为 name&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:files              &lt;span class=&#34;c1&#34;&gt;# 查看缓冲区列表&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;缓冲区&#34;&gt;
    &lt;a href=&#34;#%e7%bc%93%e5%86%b2%e5%8c%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    缓冲区
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;缓冲区（Buffer）是一块内存区域，用于存储着正在编辑的文件。在保存缓冲区并退出时，内容也随之被写回原始文件。切换缓冲区可以在多个文件中来回编辑，提高编辑效率。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ls                 &lt;span class=&#34;c1&#34;&gt;# 查看缓冲区列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:files              &lt;span class=&#34;c1&#34;&gt;# 查看缓冲区列表，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:buffers            &lt;span class=&#34;c1&#34;&gt;# 查看缓冲区列表，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ls &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;flags&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 查看指定状态的缓冲区，其中 [flags] 参考下面列表取值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ball               &lt;span class=&#34;c1&#34;&gt;# 为每个缓冲区打开一个窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bad&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;d&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 将名称为 name 的文件添加到缓冲区列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:b&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;uffer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 打开指定缓存编号的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:b&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;uffer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 打开名称为 name 的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sb&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;uffer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 纵向分割打开指定缓存编号的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sb&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;uffer&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 纵向分割打开名称为 name 的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bn&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ext&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 切换到下一个缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bN&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ext&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 切换到上一个缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;revious&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;        &lt;span class=&#34;c1&#34;&gt;# 切换到上一个缓冲区，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bf&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;irst&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 切换到第一个缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ast&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 切换到最后一个缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bd&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elete&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 删除指定 N 编号的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:N,Mbdelete         &lt;span class=&#34;c1&#34;&gt;# 删除指定范围的缓冲区，例如 :3,5bdelete 表示删除缓存编号在 3~5 范围的缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:bun&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;load&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 卸载缓冲区，! 代表是否强制卸载缓冲区&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;N Ctrl+^            &lt;span class=&#34;c1&#34;&gt;# 切换缓冲区，先输入缓存编号，再按 Ctrl+^&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;查看缓冲区列表时，缓冲区状态包含以下几种：&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;缓冲区状态&lt;/th&gt;
          &lt;th&gt;说明&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;+&lt;/td&gt;
          &lt;td&gt;modified buffers，已更改的缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;-&lt;/td&gt;
          &lt;td&gt;buffers with &amp;lsquo;modifiable&amp;rsquo; off，禁用了 modifiable 选项，只读缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;=&lt;/td&gt;
          &lt;td&gt;readonly buffers，只读缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;a&lt;/td&gt;
          &lt;td&gt;active buffers，活动缓冲区，显示在当前屏幕上&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;u&lt;/td&gt;
          &lt;td&gt;unlisted buffers (overrides the &amp;ldquo;!&amp;rdquo;)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;h&lt;/td&gt;
          &lt;td&gt;hidden buffers，隐藏缓冲区，已载入但没显示在屏幕上&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;x&lt;/td&gt;
          &lt;td&gt;buffers with a read error，读入时报错的缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;%&lt;/td&gt;
          &lt;td&gt;current buffer，当前缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;#&lt;/td&gt;
          &lt;td&gt;alternate buffer，交换缓冲区&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;R&lt;/td&gt;
          &lt;td&gt;terminal buffers with a running job&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;F&lt;/td&gt;
          &lt;td&gt;terminal buffers with a finished job&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;?&lt;/td&gt;
          &lt;td&gt;terminal buffers without a job: &lt;code&gt;:terminal NONE&lt;/code&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;t&lt;/td&gt;
          &lt;td&gt;show time last used and sort buffers&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;分屏窗口&#34;&gt;
    &lt;a href=&#34;#%e5%88%86%e5%b1%8f%e7%aa%97%e5%8f%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    分屏窗口
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;分屏窗口是基于 Ctrl+W 快捷键的，Ctrl 是控制功能键，W 是代表 Windom，Ctrl+W 代表控制窗口的意思。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-55&#34;&gt;55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-56&#34;&gt;56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-57&#34;&gt;57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-32-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-32-58&#34;&gt;58&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; :sp[file] 上下分屏   :vsp[file] 左右分屏
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; vim -o file1 file2 file3   上下分屏
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; vim -O file1 file2 file3   左右分屏
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;lt;C-w&amp;gt;h/j/k/l/w             在窗口间移动光标
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34; &amp;lt;C-w&amp;gt;H/J/K/L/r/R 移动窗口; &amp;lt;C-w&amp;gt;o 关闭其他窗口只保留当前的(:only); &amp;lt;C-w&amp;gt;T 将当前窗口移到新的标签页中
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &amp;lt;C-w&amp;gt;+-&amp;lt;&amp;gt; 增/减 窗口 高度/宽度 &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &amp;lt;C-w&amp;gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; 设置所有窗口同宽同高
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 横向切分窗口并在新窗口打开文件 file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;sp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 横向切分 N 个当前窗口出来，内容同步，游标可以不同&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;new             &lt;span class=&#34;c1&#34;&gt;# 横向切分出一个 N 行高的窗口，并编辑一个新文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;sv&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;iew&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 横向切分窗口并在新窗口打开文件 file，等价于 :split，区别在于当前窗口的内容 只读&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;sf&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ind&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 横向切分窗口，从 path 中找到文件 file 并编辑之&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W s            &lt;span class=&#34;c1&#34;&gt;# 横向切分当前窗口（s: split）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W f            &lt;span class=&#34;c1&#34;&gt;# 横向切分出一个窗口，并在新窗口打开名称为光标所在词的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vs&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 纵向切分窗口并在新窗口打开文件 file（vs: vertical split）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;vsp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;        &lt;span class=&#34;c1&#34;&gt;# 纵向切分 N 个当前窗口出来，内容同步，游标可以不同&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;vne&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;w&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 纵向切分出一个新窗口     &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W v            &lt;span class=&#34;c1&#34;&gt;# 纵向切分当前窗口（v:vertical split）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W n            &lt;span class=&#34;c1&#34;&gt;# 新建一个无文件窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W c            &lt;span class=&#34;c1&#34;&gt;# 关闭当前窗口，但不能关闭最后一个窗口，等价于 :clo[se]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W o            &lt;span class=&#34;c1&#34;&gt;# 关闭其他窗口，只保留当前活动窗口，等价于 :on[ly]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W q            &lt;span class=&#34;c1&#34;&gt;# 退出当前窗口，如果是最后一个窗口，则退出 Vim，等价于 :q[uit]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W h            &lt;span class=&#34;c1&#34;&gt;# 跳转到左边的窗口（h 键位于左边，按该键光标左移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W j            &lt;span class=&#34;c1&#34;&gt;# 跳转到下边的窗口（j 键有向下的突起，按该键光标下移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W k            &lt;span class=&#34;c1&#34;&gt;# 跳转到上边的窗口（k 键与 j 键相反，按该键光标上移）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W l            &lt;span class=&#34;c1&#34;&gt;# 跳转到右边的窗口（l 键位于右边，按下该键光标向右移动）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W H            &lt;span class=&#34;c1&#34;&gt;# 移动当前窗口到最左边&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W J            &lt;span class=&#34;c1&#34;&gt;# 移动当前窗口到最下边&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W K            &lt;span class=&#34;c1&#34;&gt;# 移动当前窗口到最上边&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W L            &lt;span class=&#34;c1&#34;&gt;# 移动当前窗口到最右边&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W              &lt;span class=&#34;c1&#34;&gt;# 切换到下一个窗口（W: Window） &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W w            &lt;span class=&#34;c1&#34;&gt;# 循环切换到下一个窗口 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W W            &lt;span class=&#34;c1&#34;&gt;# 循环切换到上一个窗口 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W p            &lt;span class=&#34;c1&#34;&gt;# 切换至上个访问过的窗口 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W r            &lt;span class=&#34;c1&#34;&gt;# 反转互换窗口（r: reverse）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W T            &lt;span class=&#34;c1&#34;&gt;# 将当前窗口移到新的标签页中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ctrl+W t            &lt;span class=&#34;c1&#34;&gt;# 切换到最上面的窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ctrl+W b            &lt;span class=&#34;c1&#34;&gt;# 切换到最下面的窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W P            &lt;span class=&#34;c1&#34;&gt;# 跳转到预览窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W z            &lt;span class=&#34;c1&#34;&gt;# 关闭预览窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;                     &lt;span class=&#34;c1&#34;&gt;# 设置所有窗口同宽同高&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W _                     &lt;span class=&#34;c1&#34;&gt;# 纵向最大化当前窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt;                     &lt;span class=&#34;c1&#34;&gt;# 横向最大化当前窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W +                     &lt;span class=&#34;c1&#34;&gt;# 增加当前窗口的行高，前面可以加数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W -                     &lt;span class=&#34;c1&#34;&gt;# 减少当前窗口的行高，前面可以加数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W &amp;lt;                     &lt;span class=&#34;c1&#34;&gt;# 减少当前窗口的列宽，前面可以加数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+W &amp;gt;                     &lt;span class=&#34;c1&#34;&gt;# 增加当前窗口的列宽，前面可以加数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &amp;lt;N&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的高度，增加 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; +&amp;lt;N&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的高度，增加 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -&amp;lt;N&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的高度，减小 N 行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vert&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ical&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &amp;lt;N&amp;gt;     &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的宽度，增加 N 列&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vert&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ical&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; +&amp;lt;N&amp;gt;    &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的宽度，增加 N 列&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vert&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ical&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; res&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ize&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -&amp;lt;N&amp;gt;    &lt;span class=&#34;c1&#34;&gt;# 调整当前窗口的宽度，减小 N 列&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;标签页&#34;&gt;
    &lt;a href=&#34;#%e6%a0%87%e7%ad%be%e9%a1%b5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    标签页
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-33-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-33-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabs               &lt;span class=&#34;c1&#34;&gt;# 显示所有标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabnew &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 在新标签页中编辑新的文件 file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabe&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dit&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 在新标签页中打开并编辑文件 file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabf&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ind&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 在当前目录搜索 file，并在新标签页中打开。请注意，此命令只能打开一个文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tab split          &lt;span class=&#34;c1&#34;&gt;# 在新的标签页中打开当前窗口里的文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tab ball           &lt;span class=&#34;c1&#34;&gt;# 将缓存中所有文件用标签页打开&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tab drop &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 如果文件已被其他标签页和窗口打开则跳过去，否则新标签打开&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lose&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 关闭当前标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;nly&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 关闭其他标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabn N             &lt;span class=&#34;c1&#34;&gt;# 切换到第 N 个标签页，例如：tabn 3 切换到第 3 个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ove&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; N        &lt;span class=&#34;c1&#34;&gt;# 将当前标签页移动到第 N 个标签页之后，标签页编号是从 0 开始计数的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ove&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; +N       &lt;span class=&#34;c1&#34;&gt;# 标签页往右移 N 个位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ove&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; -N       &lt;span class=&#34;c1&#34;&gt;# 标签页往左移 N 个位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabr&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ewind&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;        &lt;span class=&#34;c1&#34;&gt;# 切换到第一个标签页，等价于 :tabfirst 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabfir&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;st&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 切换到第一个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ast&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 切换到最后一个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabn&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ext&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 切换到下一个标签页，等价于 gt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;revious&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 切换到上一个标签页，等价于 gT&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gt                  &lt;span class=&#34;c1&#34;&gt;# 切换到下一个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gT                  &lt;span class=&#34;c1&#34;&gt;# 切换到上一个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;gt               &lt;span class=&#34;c1&#34;&gt;# 切换到第 N 个标签页，例如 2gt 将会切换到第 2 个标签页&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tabd&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;o&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;cmd&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 同时在多个标签页中执行命令，例如 :tabdo %s/food/drink/g，一次完成对所有文件的替换操作&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tab &lt;span class=&#34;nb&#34;&gt;help&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 在标签页打开帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h tabpage          &lt;span class=&#34;c1&#34;&gt;# 查看标签页帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;vim书签&#34;&gt;
    &lt;a href=&#34;#vim%e4%b9%a6%e7%ad%be&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    vim书签
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 书签可以在文件内容及文件之间快速定位到指定位置。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-34-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-34-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;m&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mark-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 创建名称为 mark-name 的书签&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:marks                       &lt;span class=&#34;c1&#34;&gt;# 查看并列出所有书签&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:marks &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mark-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 查看名称为 mark-name 书签的详情信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mark-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 跳转到书签的确切位置。请注意，此字符是后退引号&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mark-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 跳转到书签行的开头。请注意，此字符是单引号&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:delm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;arks&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mark-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 删除书签，可以批量删除&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:delm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;arks&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!                 &lt;span class=&#34;c1&#34;&gt;# 删除所有当前缓冲区的书签，但不包括 A-Z 和 0-9 的书签&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h marks                     &lt;span class=&#34;c1&#34;&gt;# 查看书签帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-35-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-35-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:marks              &lt;span class=&#34;c1&#34;&gt;# 查看所有书签&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;m&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;a-zA-Z&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 创建书签，小写的是文件书签，大写的是全局书签，可以用 a-zA-Z 中的任何字母标记&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ma                  &lt;span class=&#34;c1&#34;&gt;# 保存当前位置到书签 a&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:marks a            &lt;span class=&#34;c1&#34;&gt;# 显示名称为 a 书签的详细信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;a                  # 跳转到书签 a 所在的行
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;`a                  # 跳转到书签 a 所在位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;``                  # 回到上次跳转的位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;                  # 回到上次跳转的位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;`.                  # 回到上次编辑的位置
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;.                  &lt;span class=&#34;c1&#34;&gt;# 回到上次编辑的位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;A                  # 跳转到全局书签 A
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;[&amp;#39;&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上一个书签&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;                  # 跳转到下一个书签
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&amp;lt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上次可视模式选择区域的开始&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;&lt;/span&gt;&amp;gt;                  &lt;span class=&#34;c1&#34;&gt;# 跳转到上次可视模式选择区域的结束&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:delm a b           &lt;span class=&#34;c1&#34;&gt;# 删除书签 a 和 b&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:delmarks p-z       &lt;span class=&#34;c1&#34;&gt;# 删除范围在 p ~ z 的书签&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文件浏览器&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e6%b5%8f%e8%a7%88%e5%99%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件浏览器
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 7.0 之后内置 Netrw 插件，提供文件浏览器功能，相比与 NERDTree 第三方插件来说速度更快，体量更轻，设计更简洁。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-36-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-36-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;E&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;xplore&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 当前窗口中打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;Hex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 水平分割窗口打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;Lex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 左边窗口打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;Sex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 水平分割窗口打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;Vex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 垂直分割窗口打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:Tex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;dir&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 新标签页打开文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:Rex&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;plore&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 返回文件浏览器&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:Nexplore                 &lt;span class=&#34;c1&#34;&gt;# 定位到下一个匹配文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:Pexplore                 &lt;span class=&#34;c1&#34;&gt;# 定位到上一个匹配文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; netrw             &lt;span class=&#34;c1&#34;&gt;# 查看更多 Netrw 插件的帮助信息&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;拼写检查&#34;&gt;
    &lt;a href=&#34;#%e6%8b%bc%e5%86%99%e6%a3%80%e6%9f%a5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    拼写检查
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-37-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-37-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set spell          &lt;span class=&#34;c1&#34;&gt;# 打开拼写检查&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set nospell        &lt;span class=&#34;c1&#34;&gt;# 关闭拼写检查&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;s                  &lt;span class=&#34;c1&#34;&gt;# 下一处错误拼写的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;s                  &lt;span class=&#34;c1&#34;&gt;# 上一处错误拼写的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zg                  &lt;span class=&#34;c1&#34;&gt;# 加入单词到拼写词表中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zug                 &lt;span class=&#34;c1&#34;&gt;# 撤销上一次加入的单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;z&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 拼写建议&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;代码折叠&#34;&gt;
    &lt;a href=&#34;#%e4%bb%a3%e7%a0%81%e6%8a%98%e5%8f%a0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    代码折叠
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-38-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-38-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt; 代码折叠命令： &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;close&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;创建折叠 &lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;open&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;展开折叠&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       za         切换当前光标下的折叠的状态(open或close) == zc+zo
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zA         &lt;span class=&#34;nv&#34;&gt;递归切换当前折叠及其嵌套折叠的状态&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; zC+zO
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zr         减少折叠级别
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zm         增加折叠级别
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zj         定位到下一个折叠处
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zk         定位到上一个折叠处
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zc         创建一个光标下的折叠&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;close&lt;span class=&#34;o&#34;&gt;)(&lt;/span&gt;从内向外&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zC         递归创建折叠及嵌套折叠(从内向外)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zo         展开一个光标下的折叠&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;open&lt;span class=&#34;o&#34;&gt;)(&lt;/span&gt;从外向内&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;       zO         递归打开当前折叠及其嵌套折叠,大写的字母O (从外向内)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;       zf         对所指定的文本范围进行折叠,只支持manual和marker&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-39-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-39-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; z           &lt;span class=&#34;c1&#34;&gt;# 查看 折叠 帮助文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zf&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;motion&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 手动定义一个折叠（f:fold）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;range&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;fold        &lt;span class=&#34;c1&#34;&gt;# 将范围 {range} 包括的行定义为一个折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;z&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 给出拼写建议&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zf                  &lt;span class=&#34;c1&#34;&gt;# 创建代码折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zF                  &lt;span class=&#34;c1&#34;&gt;# 指定行数 N 创建折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;za                  &lt;span class=&#34;c1&#34;&gt;# 打开或关闭当前折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zA                  &lt;span class=&#34;c1&#34;&gt;# 递归切换折叠，即递归打开一个关闭的折叠或关闭一个打开的折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zi                  &lt;span class=&#34;c1&#34;&gt;# 切换折叠，切换 foldenable（i: invert）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zc                  &lt;span class=&#34;c1&#34;&gt;# 关闭光标下的一个折叠（c: close）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zC                  &lt;span class=&#34;c1&#34;&gt;# 递归关闭折叠（C: Close）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zj                  &lt;span class=&#34;c1&#34;&gt;# 定位到下一个折叠处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zk                  &lt;span class=&#34;c1&#34;&gt;# 定位到上一个折叠处&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zd                  &lt;span class=&#34;c1&#34;&gt;# 删除光标下折叠（d: delete）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zD                  &lt;span class=&#34;c1&#34;&gt;# 递归删除折叠（D: Delete）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zE                  &lt;span class=&#34;c1&#34;&gt;# 删除所有折叠&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zm                  &lt;span class=&#34;c1&#34;&gt;# 收起嵌套的折行，减少 foldlevel（m: more）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zM                  &lt;span class=&#34;c1&#34;&gt;# 关闭所有折叠，置 foldlevel 为 0，设置 foldenable&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zn                  &lt;span class=&#34;c1&#34;&gt;# 不折叠，重置 foldenable 并打开所有代码（n: none）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zN                  &lt;span class=&#34;c1&#34;&gt;# 正常折叠，重置 foldenable 并恢复所有折叠（N: Normal）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zr                  &lt;span class=&#34;c1&#34;&gt;# 打开嵌套的折行，增加 foldlevel（r: reduce）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zR                  &lt;span class=&#34;c1&#34;&gt;# 打开所有折叠，置 foldlevel 为最大值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zo                  &lt;span class=&#34;c1&#34;&gt;# 打开光标下的折叠（o: open）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zO                  &lt;span class=&#34;c1&#34;&gt;# 递归打开折叠（O: Open）&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文档加解密&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e6%a1%a3%e5%8a%a0%e8%a7%a3%e5%af%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文档加解密
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-40-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-40-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim -x &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 文档加密，输入加密密码并再次确认密码。注意：不修改内容也要保存，否则密码设定不会生效&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:X                  &lt;span class=&#34;c1&#34;&gt;# 文档加密，命令模式下输入加密密码并再次确认密码。注意：不修改内容也要保存，否则密码设定不会生效&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set &lt;span class=&#34;nv&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;={&lt;/span&gt;password&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 文档加密，命令模式下输入加密密码并再次确认密码。注意：不修改内容也要保存，否则密码设定不会生效&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:X                  &lt;span class=&#34;c1&#34;&gt;# 文档解密，命令模式下直接按 &amp;lt;Enter&amp;gt; 回车键，表示密码为空。注意：不修改内容也要保存，否则解密设定不会生效&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set &lt;span class=&#34;nv&#34;&gt;key&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 文档解密，命令模式下设置 key 的密码为空。注意：不修改内容也要保存，否则密码设定不会生效&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;宏录制&#34;&gt;
    &lt;a href=&#34;#%e5%ae%8f%e5%bd%95%e5%88%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    宏录制
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;宏是录制和播放功能，是一系列 Vim 命令操作的集成，利用宏可以减少很多重复的复杂操作。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-41-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-41-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-41-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-41-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-41-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-41-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-41-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-41-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-41-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-41-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;q&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;0-9a-zA-Z&lt;span class=&#34;s2&#34;&gt;&amp;#34;}       # 开始录制名字为 {0-9a-zA-Z&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; 的宏，例如 qa 表示录制名字为 a 的宏
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;q                   &lt;span class=&#34;c1&#34;&gt;# 结束录制宏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;@&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;0-9a-z&lt;span class=&#34;s2&#34;&gt;&amp;#34;.=*+}      # 播放名字为 {0-9a-z&amp;#34;&lt;/span&gt;.&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;*+&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; 的宏，例如 @a 表示播放名字为 a 的宏
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;@@                  &lt;span class=&#34;c1&#34;&gt;# 播放上一个宏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;@:                  &lt;span class=&#34;c1&#34;&gt;# 重复上一个 Ex 命令，即冒号命令&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;宏&lt;/strong&gt; 举例：需要将以下多行文本的行首键入一个 Tab 制表键进行 &lt;strong&gt;行首缩进&lt;/strong&gt;。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-42-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-42-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set nu
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set tabstop=4
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set shiftwidth=4
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set softtabstop=4
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set autoindent
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set wrap
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;syntax on&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h3 id=&#34;录制宏&#34;&gt;
    &lt;a href=&#34;#%e5%bd%95%e5%88%b6%e5%ae%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    录制宏
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;先将光标移动到第一行。&lt;/li&gt;
&lt;li&gt;在 Normal 模式下，按 q 字母键加一个字母开始录制。例如按下 qa，将该宏注册为 a。&lt;/li&gt;
&lt;li&gt;按下 I 字母键在行首插入，在编辑模式按下 Tab 制表键。按 &lt;Esc&gt; 退出键返回到 Normal 模式。&lt;/li&gt;
&lt;li&gt;按下 j 字母键将光标移动到下一行。&lt;/li&gt;
&lt;li&gt;按下 q 字母键完成录制。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;使用宏&#34;&gt;
    &lt;a href=&#34;#%e4%bd%bf%e7%94%a8%e5%ae%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    使用宏
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;使用上面录制的宏 a，按下 @a，播放名字为 a 的宏。&lt;/li&gt;
&lt;li&gt;Normal 模式下将光标移动到第二行，按下 @a，再使用了一次宏 a。&lt;/li&gt;
&lt;li&gt;多次操作按下 N@a，其中 N 为正整数，代表执行 N 次宏。例如将光标移动到第 3 行，对余下的 5 行操作宏 a，按下 5@a。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;以上 &lt;strong&gt;录制宏、使用宏&lt;/strong&gt; 两个共同操作，完成多行文本的行首键入一个 Tab 制表键进行行首缩进！&lt;/p&gt;
&lt;h2 id=&#34;其它命令&#34;&gt;
    &lt;a href=&#34;#%e5%85%b6%e5%ae%83%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    其它命令
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-43-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-43-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ga                  &lt;span class=&#34;c1&#34;&gt;# 显示光标下字符的 ASCII 码或者 Unicode 编码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g8                  &lt;span class=&#34;c1&#34;&gt;# 显示光标下字符的 UTF-8 编码字节序&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gi                  &lt;span class=&#34;c1&#34;&gt;# 回到上次进入插入的地方，并切换到插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;gH                  &lt;span class=&#34;c1&#34;&gt;# 启动选择行模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;K                   &lt;span class=&#34;c1&#34;&gt;# 查询光标下单词的帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+G              &lt;span class=&#34;c1&#34;&gt;# 显示正在编辑的文件名、文件大小和位置信息等信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g Ctrl+G            &lt;span class=&#34;c1&#34;&gt;# 显示文件的大小、字符数、单词数和行数，可视模式下也可用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+PgUp           &lt;span class=&#34;c1&#34;&gt;# 上个标签页，GVim OK，部分终端软件需设置对应键盘码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+PgDown         &lt;span class=&#34;c1&#34;&gt;# 下个标签页，GVim OK，部分终端软件需设置对应键盘码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+R Ctrl+W       &lt;span class=&#34;c1&#34;&gt;# 命令模式下插入光标下单词&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+Insert         &lt;span class=&#34;c1&#34;&gt;# 复制到系统剪贴板（GVim）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Shift+Insert        &lt;span class=&#34;c1&#34;&gt;# 粘贴系统剪贴板的内容（GVim）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+E       &lt;span class=&#34;c1&#34;&gt;# 插入模式下向上滚屏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+X Ctrl+Y       &lt;span class=&#34;c1&#34;&gt;# 插入模式下向下滚屏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:.!date             &lt;span class=&#34;c1&#34;&gt;# 在当前窗口插入时间&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%!xxd              &lt;span class=&#34;c1&#34;&gt;# 开始二进制编辑&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%!xxd -r           &lt;span class=&#34;c1&#34;&gt;# 保存二进制编辑&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:r !curl -sL &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;URL&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 读取 URL 内容添加到光标后&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:v/./,/./-j         &lt;span class=&#34;c1&#34;&gt;# 压缩空行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:Man bash           &lt;span class=&#34;c1&#34;&gt;# 在 Vim 中查看 man，先调用 :runtime! ftplugin/man.vim 激活&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/fred&lt;span class=&#34;se&#34;&gt;\|&lt;/span&gt;joe          &lt;span class=&#34;c1&#34;&gt;# 搜索 fred 或者 joe&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/&lt;span class=&#34;se&#34;&gt;\&amp;lt;\d\d\d\d\&amp;gt;&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 精确搜索四个数字&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;/^&lt;span class=&#34;se&#34;&gt;\n\{&lt;/span&gt;3&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 搜索连续三个空行&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;历史命令&#34;&gt;
    &lt;a href=&#34;#%e5%8e%86%e5%8f%b2%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    历史命令
&lt;/h2&gt;&lt;p&gt;历史命令格式。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-44-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-44-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:his&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tory&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[{&lt;/span&gt;first&lt;span class=&#34;o&#34;&gt;}][&lt;/span&gt;, &lt;span class=&#34;o&#34;&gt;[{&lt;/span&gt;last&lt;span class=&#34;o&#34;&gt;}]]&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;{name}：指定历史记录类型。&lt;/li&gt;
&lt;li&gt;{first}：指定命令历史的起始位置，默认为第一条记录。&lt;/li&gt;
&lt;li&gt;{last}：指定命令历史的终止位置，默认为最后一条记录。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;在命令行模式下。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-45-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-45-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:his&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tory&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# 查看所有命令行模式下输入的命令历史&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:his&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tory&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; all            &lt;span class=&#34;c1&#34;&gt;# 查看所有类型的历史记录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:history c 1,5            &lt;span class=&#34;c1&#34;&gt;# 查看第一到第五条命令行历史&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:history search 或 / 或 ? &lt;span class=&#34;c1&#34;&gt;# 查看搜索历史&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:call histdel&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 删除历史记录&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:help :history            &lt;span class=&#34;c1&#34;&gt;# 查看 :history 命令的帮助信息&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在普通模式下。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-46-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-46-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-46-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-46-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-46-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-46-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;q/                        &lt;span class=&#34;c1&#34;&gt;# 查看使用 q/ 输入的搜索历史&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;q?                        &lt;span class=&#34;c1&#34;&gt;# 查看使用 q? 输入的搜索历史&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;q:                        &lt;span class=&#34;c1&#34;&gt;# 查看命令行历史&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;寄存器&#34;&gt;
    &lt;a href=&#34;#%e5%af%84%e5%ad%98%e5%99%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    寄存器
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 寄存器是用于保存临时数据的地方。Vim 有多个寄存器，可当作多个剪贴板，在使用多个文件时，此功能非常有用，且活用多个寄存器可以显著提高数据的安全和可操作性。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-47-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-47-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-47-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-47-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-47-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-47-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-47-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-47-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-47-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-47-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:reg&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;isters&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 查看所有寄存器的值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:reg&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;isters&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;args&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 查看指定 {args} 中提到的寄存器值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;{register}               # 普通模式下调取寄存器值
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;:Ctrl+r &amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;reg-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;       &lt;span class=&#34;c1&#34;&gt;# 命令模式下输入 Ctrl+r 后 Vim 会自动打出 &amp;#34; 寄存器引用符号&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ctrl+r &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;reg-name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 插入模式下无需输入寄存器引用符号 &amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-48-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-48-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-48-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-48-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-48-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-48-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-48-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-48-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;?yy                # 复制当前行到寄存器 ? ，问号代表 0 ~ 9 的寄存器名称
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;?d3j               &lt;span class=&#34;c1&#34;&gt;# 删除光标下三行内容，并放到寄存器 ? ，问号代表 0 ~ 9 的寄存器名称&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;?p                 # 将寄存器 ? 的内容粘贴到光标后
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;?P                 &lt;span class=&#34;c1&#34;&gt;# 将寄存器 ? 的内容粘贴到光标前&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Vim 寄存器分类。&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;寄存器名称     &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;/td&gt;
          &lt;td&gt;&amp;quot;&amp;quot;&lt;/td&gt;
          &lt;td&gt;默认寄存器，所有的复制和修改操作（x、s、d、c、y）都会将该数据复制到无名寄存器&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;字母寄存器&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;a-zA-Z&lt;/td&gt;
          &lt;td&gt;{register} 只能是一位的 26 个英文字母，从 a-z，A-Z 寄存器内容将会合并到对应小写字母内容后边&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;复制专用寄存器&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;0&lt;/td&gt;
          &lt;td&gt;仅当使用复制操作(y)时，该数据将会同时被复制到无名寄存器和复制专用寄存器&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;逐级临时缓存寄存器&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;1 - &amp;ldquo;9&lt;/td&gt;
          &lt;td&gt;所有不带范围（‘(’，‘)’，‘{’，‘}’）、操作涉及 1 行以上的删除修改操作（x、s、d、c）的数据都会复制到逐级临时缓存寄存器，并在新的数据加入时，逐级先后推移。1 的数据复制到 2，2 到 3，最后的 9 寄存器内容将会被删除&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;黑洞寄存器&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;_&lt;/td&gt;
          &lt;td&gt;几乎所有的操作涉及的数据都会被复制到寄存器，如果想让操作的数据不经过寄存器，可以指定黑洞寄存器，数据到该寄存器就会消失掉，不能显示，也不存在&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;系统剪切板&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;+ 或 &amp;ldquo;*&lt;/td&gt;
          &lt;td&gt;与 Vim 外部的 GUI 交互数据时，需要使用专用的系统剪切板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;表达式寄存器&lt;/td&gt;
          &lt;td&gt;&amp;ldquo;=&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;h2 id=&#34;配置文件&#34;&gt;
    &lt;a href=&#34;#%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    配置文件
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Vim 配置文件有全局和用户两种版本，且用户配置文件优先于全局系统配置文件。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-49-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-49-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ve&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;rsion&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 查看 Vim 版本，同时也查看 Vim 载入配置文件的优先顺序及所在位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:echo &lt;span class=&#34;nv&#34;&gt;$MYVIMRC&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# Vim 命令模式下使用该命令输出 Vim 配置文件的位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:edit &lt;span class=&#34;nv&#34;&gt;$MYVIMRC&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# Vim 命令模式下使用该命令打开 Vim 配置文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:so&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;urce&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$MYVIMRC&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# Vim 配置文件改动后，使用该命令加载新的配置选项，命令缩写为 :so %&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:echo &lt;span class=&#34;nv&#34;&gt;$VIM&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 输出全局 vimrc 配置文件位置，存放在 Vim 的安装目录中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:echo &lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 输出用户 vimrc 配置文件位置，存放在用户主目录中&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在命令行模式下单个设置选项，且选项只在当前窗口生效（命令前记得加上 “:” ，在 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;./vimrc&#34; &gt;vimrc 配置文件


&lt;/a&gt;


&lt;/strong&gt; 中则不需要）。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-50-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-50-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                    &lt;span class=&#34;c1&#34;&gt;# 显示出所有与其默认值不同的选项，当 [!] 出现时，每个选项都显示在单独的行上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;][&lt;/span&gt;!&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; all                &lt;span class=&#34;c1&#34;&gt;# 显示所有选项列表，当 [!] 出现时，每个选项都显示在单独的行上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; all&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 将所有的选项都重置为默认值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 将选项设置为默认值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;?             &lt;span class=&#34;c1&#34;&gt;# 查看某个选项的当前值，屏幕底部将显示其返回值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 打开某个设置选项， 选项大致可分为三种：布尔值选项、数值选项和字符串选项&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; no&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 关闭某个设置选项&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;!             &lt;span class=&#34;c1&#34;&gt;# 反转设置选项&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; inv&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 反转设置选项，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;:&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;valus&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 设置选项的值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}={&lt;/span&gt;valus&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 设置选项的值，同上&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;+&lt;span class=&#34;o&#34;&gt;={&lt;/span&gt;valus&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 在选项中增加数值或增加字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;-&lt;span class=&#34;o&#34;&gt;={&lt;/span&gt;valus&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 在选项中减去数值或移除字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;option&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;^&lt;span class=&#34;o&#34;&gt;={&lt;/span&gt;valus&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 将选项乘以数值或在选项开头增加字符串&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:setl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ocal&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 等价于 :set，但对局部选项设定其局部值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:setg&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lobal&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 等价于 :set，但对局部选项设定其全局值&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; se&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;t&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# 查看命令的帮助信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:map                         &lt;span class=&#34;c1&#34;&gt;# 查看当前 Vim 配置的 map 映射快捷键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:inoremap                    &lt;span class=&#34;c1&#34;&gt;# 查看当前 Vim 配置的 inoremap 映射快捷键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:nnoremap                    &lt;span class=&#34;c1&#34;&gt;# 查看当前 Vim 配置的 nnoremap 映射快捷键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:unm&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ap&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;lhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 取消 {lhs} 选项的映射，例如 :unmap &amp;lt;F10&amp;gt; 表示取消 F10 的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:mapclear                    &lt;span class=&#34;c1&#34;&gt;# 取消所有映射；请注意，该命令将会移除所有用户定义和系统默认的键盘映射，慎用&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:mapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!                 &lt;span class=&#34;c1&#34;&gt;# 清除插入及命令行模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:imapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 清除插入模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:vmapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 清除可视模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:omapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 清除操作符等待模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:nmapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 清除普通模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cmapc&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;lear&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 清除命令行模式下的映射&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:scr&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;iptnames&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;               &lt;span class=&#34;c1&#34;&gt;# 查看 Vim 加载时加载了那些插件和脚本&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;按键映射命令格式：&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-51-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-51-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;prefix&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;map &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;lhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;rhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 将键 {lhs} 映射为 {rhs}，{rhs} 可进行映射扫描，也可递归映射&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;{lhs}：lhs 代表 left-hand-side，即左边参数。&lt;/li&gt;
&lt;li&gt;{rhs}：rhs 代表 right-hand-side，即右边参数。&lt;/li&gt;
&lt;li&gt;[prefix]：作用模式前缀，有以下取值。&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;前缀&lt;/th&gt;
          &lt;th&gt;作用模式&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 style=&#34;text-align: center&#34;&gt;&amp;lt;Space&amp;gt;&lt;/td&gt;
          &lt;td&gt;普通、可视、选择和操作符等待&lt;/td&gt;
          &lt;td&gt;:map {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;无&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;n&lt;/td&gt;
          &lt;td&gt;普通模式&lt;/td&gt;
          &lt;td&gt;:nmap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:nm {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;v&lt;/td&gt;
          &lt;td&gt;可视和选择模式&lt;/td&gt;
          &lt;td&gt;:vmap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:vm {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;s&lt;/td&gt;
          &lt;td&gt;选择模式&lt;/td&gt;
          &lt;td&gt;:smap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;无&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;x&lt;/td&gt;
          &lt;td&gt;可视模式&lt;/td&gt;
          &lt;td&gt;:xmap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:xm {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;o&lt;/td&gt;
          &lt;td&gt;操作符等待&lt;/td&gt;
          &lt;td&gt;:omap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:om {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;!&lt;/td&gt;
          &lt;td&gt;插入和命令行模式&lt;/td&gt;
          &lt;td&gt;:map! {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;无&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;i&lt;/td&gt;
          &lt;td&gt;插入模式&lt;/td&gt;
          &lt;td&gt;:imap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:im {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;I&lt;/td&gt;
          &lt;td&gt;插入、命令行和 Lang-Arg 模式&lt;/td&gt;
          &lt;td&gt;:lmap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:lm {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;c&lt;/td&gt;
          &lt;td&gt;命令行模式&lt;/td&gt;
          &lt;td&gt;:cmap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:lm {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;nore&lt;/td&gt;
          &lt;td&gt;不递归（no rerecursion）映射，和以上前缀自由搭配使用&lt;/td&gt;
          &lt;td&gt;:noremap {lhs} {rhs}&lt;/td&gt;
          &lt;td&gt;:nor {lhs} {rhs}&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;un&lt;/td&gt;
          &lt;td&gt;取消 :map 绑定的 {lhs}&lt;/td&gt;
          &lt;td&gt;:unmap {lhs}&lt;/td&gt;
          &lt;td&gt;无&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;{rhs} 之前可能显示的特殊字符：&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;特殊字符&lt;/th&gt;
          &lt;th&gt;意义&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;*&lt;/td&gt;
          &lt;td&gt;不可重映射&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;amp;&lt;/td&gt;
          &lt;td&gt;仅脚本的局部映射可以被重映射&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;@&lt;/td&gt;
          &lt;td&gt;缓冲区的局部映射&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;特殊参数说明（特殊参数必须在映射命令的后边，{lhs} 参数的前面）：&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;参数&lt;/th&gt;
          &lt;th&gt;说明&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;buffer&amp;gt;&lt;/td&gt;
          &lt;td&gt;如果映射命令的第一个参数是 &lt;buffer&gt; ，映射将只局限于当前缓冲区（即此时正在编辑的文件）内&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;silent&amp;gt;&lt;/td&gt;
          &lt;td&gt;执行绑定键时不在命令行上回显按键映射的命令内容&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;special&amp;gt;&lt;/td&gt;
          &lt;td&gt;一般用于定义特殊键怕有副作用的场合&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;&amp;lt;script&amp;gt;&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;该映射只使用通过以 &amp;ldquo;&lt;SID&gt;&amp;rdquo; 开头来定义的脚本局部映射来重映射 {rhs} 中的字符&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;expr&amp;gt;&lt;/td&gt;
          &lt;td&gt;如果定义新映射的第一个参数是 &lt;expr&gt; ，那么参数会作为表达式来进行计算，计算结果作为实际使用的 &lt;rhs&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;unique&amp;gt;&lt;/td&gt;
          &lt;td&gt;用于定义新的键映射或者缩写命令时检查是否该键已经被映射，如果该映射或者缩写已经存在，则该命令会失败&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;映射快捷键时常用的键表：&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;键&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 style=&#34;text-align: center&#34;&gt;&amp;lt;F1&amp;gt; ~ &amp;lt;F12&amp;gt;&lt;/td&gt;
          &lt;td&gt;功能键 F1 ～ F12&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;K0&amp;gt; ~ &amp;lt;K9&amp;gt;&lt;/td&gt;
          &lt;td&gt;数值 0 到 9&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Shift&amp;gt;&lt;/td&gt;
          &lt;td&gt;Shift 键&lt;/td&gt;
          &lt;td&gt;&amp;lt;S-&amp;hellip;&amp;gt; &amp;lt;s-&amp;hellip;&amp;gt; &amp;lt;Shift-&amp;hellip;&amp;gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Ctrl&amp;gt;&lt;/td&gt;
          &lt;td&gt;Ctrl 键&lt;/td&gt;
          &lt;td&gt;&amp;lt;C-&amp;hellip;&amp;gt; &amp;lt;c-&amp;hellip;&amp;gt; &amp;lt;Ctrl-&amp;hellip;&amp;gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Alt&amp;gt;&lt;/td&gt;
          &lt;td&gt;Alt 键&lt;/td&gt;
          &lt;td&gt;&amp;lt;A-&amp;hellip;&amp;gt; &amp;lt;a-&amp;hellip;&amp;gt; &amp;lt;Alt-&amp;hellip;&amp;gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Up&amp;gt;/&amp;lt;Down&amp;gt;/&amp;lt;Right&amp;gt;/&amp;lt;Left&amp;gt;&lt;/td&gt;
          &lt;td&gt;方向键&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Esc&amp;gt;&lt;/td&gt;
          &lt;td&gt;Esc 键&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Leader&amp;gt;&lt;/td&gt;
          &lt;td&gt;\ 前缀键&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;Tab&amp;gt;&lt;/td&gt;
          &lt;td&gt;Tab 制表键&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&amp;lt;CR&amp;gt;&lt;/td&gt;
          &lt;td&gt;Enter 回车键&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;在 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;./vimrc&#34; &gt;vimrc 配置文件


&lt;/a&gt;


&lt;/strong&gt; 中可以批量设置选项，例如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-52-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-52-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;syntax              &lt;span class=&#34;c1&#34;&gt;# 列出已经定义的语法项&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;syntax clear        &lt;span class=&#34;c1&#34;&gt;# 清除已定义的语法规则&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;syntax on           &lt;span class=&#34;c1&#34;&gt;# 允许语法高亮&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;syntax off          &lt;span class=&#34;c1&#34;&gt;# 禁止语法高亮&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nu              &lt;span class=&#34;c1&#34;&gt;# 设置显示行号，禁止显示行号可以用 :set nonu&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; number          &lt;span class=&#34;c1&#34;&gt;# 设置显示行号，禁止显示行号可以用 :set nonumber&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; list            &lt;span class=&#34;c1&#34;&gt;# 设置显示制表符和换行符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;history&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;200&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 记录 200 条历史命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;bs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;?            &lt;span class=&#34;c1&#34;&gt;# 设置 &amp;lt;Backspace&amp;gt; 退格键模式，现代编辑器为 :set bs=eol, start, indent&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;sw&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;4&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 设置缩进宽度为 4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ts&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;4&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 设置制表符宽度为 4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; noet            &lt;span class=&#34;c1&#34;&gt;# 设置不展开 Tab 制表键成空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; et              &lt;span class=&#34;c1&#34;&gt;# 设置展开 Tab 制表键成空格&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;winaltkeys&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;no   &lt;span class=&#34;c1&#34;&gt;# 设置 GVim 下正常捕获 &amp;lt;Alt&amp;gt; 换挡键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nowrap          &lt;span class=&#34;c1&#34;&gt;# 关闭自动换行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; ttimeout        &lt;span class=&#34;c1&#34;&gt;# 允许终端按键检测超时（终端下功能键为一串 Esc 开头的扫描码）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ttm&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;100&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 设置终端按键检测超时为 100 毫秒&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;term&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;?          &lt;span class=&#34;c1&#34;&gt;# 设置终端类型，例如常见的 xterm&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; ignorecase      &lt;span class=&#34;c1&#34;&gt;# 设置搜索是否忽略大小写&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; smartcase       &lt;span class=&#34;c1&#34;&gt;# 智能大小写，默认忽略大小写，除非搜索内容里包含大写字母&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; relativenumber  &lt;span class=&#34;c1&#34;&gt;# 设置显示相对行号（其他行与当前行的距离）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; paste           &lt;span class=&#34;c1&#34;&gt;# 打开粘贴模式（粘贴时禁用缩进等影响格式的内容）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nopaste         &lt;span class=&#34;c1&#34;&gt;# 关闭粘贴模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; spell           &lt;span class=&#34;c1&#34;&gt;# 允许拼写检查&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; hlsearch        &lt;span class=&#34;c1&#34;&gt;# 开启高亮查找&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nohlsearch      &lt;span class=&#34;c1&#34;&gt;# 关闭高亮查找&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; termguicolors   &lt;span class=&#34;c1&#34;&gt;# Vim 开启真彩色&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; ruler           &lt;span class=&#34;c1&#34;&gt;# 总是显示光标位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nocompatible    &lt;span class=&#34;c1&#34;&gt;# 设置不兼容原始 vi 模式，该设置必须在最开头&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; incsearch       &lt;span class=&#34;c1&#34;&gt;# 查找输入时动态增量显示查找结果&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; insertmode      &lt;span class=&#34;c1&#34;&gt;# Vim 始终处于插入模式下，使用 Ctrl+o 临时执行命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ff&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;unix         &lt;span class=&#34;c1&#34;&gt;# 设置换行为 unix&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ff&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;dos          &lt;span class=&#34;c1&#34;&gt;# 设置换行为 dos&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; ff?             &lt;span class=&#34;c1&#34;&gt;# 查看换行设置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; hidden          &lt;span class=&#34;c1&#34;&gt;# 打开隐藏模式，未保存的缓存可以被切换走，或者关闭&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; nohidden        &lt;span class=&#34;c1&#34;&gt;# 关闭隐藏模式，未保存的缓存不能被切换走，或者关闭&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; termcap         &lt;span class=&#34;c1&#34;&gt;# 查看会从终端接收什么以及会发送给终端什么命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;guicursor&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;      &lt;span class=&#34;c1&#34;&gt;# 解决 SecureCRT/PenguiNet 中 NeoVim 局部奇怪字符问题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;t_RS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;t_SH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;     &lt;span class=&#34;c1&#34;&gt;# 解决 SecureCRT/PenguiNet 中 Vim8.0 终端功能奇怪字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;fo&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;a           &lt;span class=&#34;c1&#34;&gt;# 开启文本段的实时自动格式化&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;set&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;showtabline&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;?   &lt;span class=&#34;c1&#34;&gt;# 标签页显示方式，? 为 0 时隐藏标签页，1 会按需显示，2 会永久显示&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;inoremap vv &amp;lt;Esc&amp;gt;   &lt;span class=&#34;c1&#34;&gt;# 插入模式下的 vv 键为 Esc 退出键，退出插入模式&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nnoremap gh ^       &lt;span class=&#34;c1&#34;&gt;# 普通模式下按 gh 键进行行首跳转，代替数字 0 进行行首跳转&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nnoremap gl $       &lt;span class=&#34;c1&#34;&gt;# 普通模式下按 gl 键进行行尾跳转，代替数字 $ 进行行尾跳转&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;常用插件&#34;&gt;
    &lt;a href=&#34;#%e5%b8%b8%e7%94%a8%e6%8f%92%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    常用插件
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/tpope/vim-commentary&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;vim-commentary


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


：批量注释工具，可以注释多行和去除多行注释。&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/preservim/nerdtree&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;NERDTree


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


：插件用于列出当前路径的目录树。&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/skywind3000/asyncrun.vim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;asyncrun.vim


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


：插件使用 Vim 8、NeoVim 的异步机制，让你在后台运行 Shell 命令，并将结果实时显示到 Vim 的 Quickfix 窗口中。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;vim模式&#34;&gt;
    &lt;a href=&#34;#vim%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    vim模式
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-53-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-53-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;普通模式             &lt;span class=&#34;c1&#34;&gt;# 按 &amp;lt;Esc&amp;gt; 退出键或 Ctrl+[ 进入普通模式，左下角显示文件名或为空&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;插入模式             &lt;span class=&#34;c1&#34;&gt;# 按 i 字母键进入插入模式，左下角显示 --INSERT--&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;可视模式             &lt;span class=&#34;c1&#34;&gt;# 按 v 字母键进入可视模式，左下角显示 --VISUAL--&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;选择模式             &lt;span class=&#34;c1&#34;&gt;# 按 {visual}+Ctrl+g 组合键进入选择模式，左下角显示 --SELECT-- &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;替换模式             &lt;span class=&#34;c1&#34;&gt;# 按 r 或 R 字母键开始替换模式，左下角显示 --REPLACE--&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;命令行模式           &lt;span class=&#34;c1&#34;&gt;# 按 : 或者 / 或者 ? 开始命令行模式，左下角无明显信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Ex 模式             &lt;span class=&#34;c1&#34;&gt;# 按 Q 字母键进入 Ex 模式，与命令行模式类似，执行完命令后，会继续停留在 Ex 模式，按 :vi[sual] 退出 Ex 模式&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;外部命令&#34;&gt;
    &lt;a href=&#34;#%e5%a4%96%e9%83%a8%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    外部命令
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-54-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-54-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:!&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;command&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# 执行一次性 Shell 命令，例如 :!pwd，输出当前 Vim 模式下所处目录路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:!!                 &lt;span class=&#34;c1&#34;&gt;# 重新执行最近一次运行过的命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sh&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ell&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 启动一个交互的 Shell 执行多个命令，不需要退出Vim。exit 命令退出并返回 Vim&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:!ls                &lt;span class=&#34;c1&#34;&gt;# 运行外部命令 ls，并等待返回&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:r !ls              &lt;span class=&#34;c1&#34;&gt;# 将外部命令 ls 的输出捕获，并插入到光标后&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:w !sudo tee %      &lt;span class=&#34;c1&#34;&gt;# sudo 以后保存当前文件，也可以这样 :w !sudo tee % &amp;gt; /dev/null&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:call system&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;ls&amp;#39;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;  &lt;span class=&#34;c1&#34;&gt;# 调用 ls 命令，但是不显示返回内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:!start notepad     &lt;span class=&#34;c1&#34;&gt;# Windows 下启动 Notepad，最前面可以加 silent&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:sil !start cmd     &lt;span class=&#34;c1&#34;&gt;# Windows 下当前目录打开 cmd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:%!prog             &lt;span class=&#34;c1&#34;&gt;# 运行文字过滤程序，如整理 JSON 格式 :%!python -m json.tool&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;gui命令&#34;&gt;
    &lt;a href=&#34;#gui%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    gui命令
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-55-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-55-9&#34;&gt;9&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:gui                         &lt;span class=&#34;c1&#34;&gt;# UNIX 启动 GUI&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:gui &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;fname&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                 &lt;span class=&#34;c1&#34;&gt;# 同上，并编辑 fname&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:menu                        &lt;span class=&#34;c1&#34;&gt;# 列出所有菜单&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:menu &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mpath&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;                &lt;span class=&#34;c1&#34;&gt;# 列出 mpath 下的所有菜单&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:menu &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mpath&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;rhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 把 rhs 加入菜单 mpath&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:menu &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;pri&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mpath&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;rhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;    &lt;span class=&#34;c1&#34;&gt;# 同上，并带有优先权 pri&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:menu ToolBar.&lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;name&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;rhs&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 把 rhs 加入工具栏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:tmenu &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mpath&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;text&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;        &lt;span class=&#34;c1&#34;&gt;# 为菜单 mpath 加入工具提示&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:unmenu &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;mpath&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;              &lt;span class=&#34;c1&#34;&gt;# 删除菜单 mpath&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;自动命令&#34;&gt;
    &lt;a href=&#34;#%e8%87%aa%e5%8a%a8%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    自动命令
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;自动命令，是在指定事件发生时自动执行的命令。利用自动命令可以将重复的手工操作自动化，以提高编辑效率并减少人为操作的差错。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;自动命令语法格式。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-56-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-56-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:au&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tocmd&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;group&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;event&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;aupat&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;++once&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;++nested&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;command&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;参数说明：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;group：组名是可选项，用于分组管理多条自动命令。&lt;/li&gt;
&lt;li&gt;event：&lt;a class=&#34;link&#34; href=&#34;resources/images/vim-events-type.jpg&#34; &gt;事件参数


&lt;/a&gt;


，用于指明触发命令的一个或多个事件。&lt;/li&gt;
&lt;li&gt;pattern：限定针对符合匹配模式的文件执行命令。&lt;/li&gt;
&lt;li&gt;nested：嵌套标记是可选项，用于允许嵌套自动命令。&lt;/li&gt;
&lt;li&gt;command：指明需要执行的命令、函数或脚本。&lt;/li&gt;
&lt;/ul&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-57-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-57-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-57-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-57-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-57-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-57-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-57-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-57-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:au&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tocmd&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;                   &lt;span class=&#34;c1&#34;&gt;# 查看所有自动命令，既包括 vimrc 文件中自定义的自动命令，也包括了各种插件定义的自动命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:au&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;tocmd&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;!                  &lt;span class=&#34;c1&#34;&gt;# 删除所有自动命令；此操作也将删除插件所定义的自动命令，请谨慎操作&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:help autocommand-events     &lt;span class=&#34;c1&#34;&gt;# 查看 自动命令事件 帮助文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:help autocmd-patterns       &lt;span class=&#34;c1&#34;&gt;# 查看匹配模式帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;自动命令组&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-58-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-58-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; aug&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;roup&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 查看自动命令组的帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;通过 :augroup 命令，可以将多个相关联的自动命令分组管理，以便于按组来查看或删除自动命令。例如以下命令，将 C 语言开发的相关自动命令，组织在 “cprogram” 组内。详情亦见 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;./vimrc&#34; &gt;vimrc 配置文件


&lt;/a&gt;


&lt;/strong&gt; 中的自动代码折叠。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-59-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-59-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-59-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-59-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-59-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-59-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-59-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-59-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-59-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-59-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:augroup cprograms
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:    autocmd!
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:    autocmd FileReadPost *.c :set cindent
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:    autocmd FileReadPost *.cpp :set cindent
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:augroup END&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果我们针对同样的文件和同样的事件定义了多条自动命令，那么当满足触发条件时将分别执行多条自动命令。因此，建议在自动命令组的开头增加 :autocmd! 命令，以确保没有重复的自动命令存在。&lt;/p&gt;
&lt;h2 id=&#34;快速修复窗口&#34;&gt;
    &lt;a href=&#34;#%e5%bf%ab%e9%80%9f%e4%bf%ae%e5%a4%8d%e7%aa%97%e5%8f%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    快速修复窗口
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;Quickfix 插件提供的功能，对编译调试程序非常有用。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-60-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-60-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cope&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;n&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;height&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 打开 Quickfix 窗口以显示当前的错误列表，height 表示高度，单位为行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:lop&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;en&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;height&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 打开 Quickfix 窗口以显示当前窗口的位置列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ccl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ose&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 关闭 Qiuckfix 窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:lcl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ose&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 关闭显示当前窗口位置列表的窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cw&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;indow&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;height&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 出现识别错误时打开 Quickfix 窗口；否则什么也不做&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:lw&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;indow&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;height&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 等价于 :cwindow，除了使用显示当前窗口的位置列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cbo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ttom&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 将光标放在 Quickfix 窗口的最后一行并滚动以使其可见&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:lbo&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ttom&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 等价于 :cbottom，除了使用显示当前位置列表的窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:copen &lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 打开 Quickfix 窗口，并且设置高度为 10&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cfir&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;st&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 跳转到 Quickfix 窗口中第 1 个错误&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cla&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;st&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 跳转到 Quickfix 窗口中最后 1 个错误&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cl&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ist&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 在 Quickfix 窗口中列出所有错误&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cc &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 显示第 N 个错误的详细信息&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cn&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;ext&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 定位到 Quickfix 窗口中下一个错误&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cp&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;rev&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 定位到 Quickfix 窗口中上一个错误&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cold&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;er&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;           &lt;span class=&#34;c1&#34;&gt;# 到前一个旧列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:cnew               &lt;span class=&#34;c1&#34;&gt;# 到后一个新列表&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;文件编码&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e7%bc%96%e7%a0%81&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件编码
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-61-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-61-9&#34;&gt;9&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:e ++enc&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;utf8 &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;file&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;         &lt;span class=&#34;c1&#34;&gt;# UTF-8 编码打开 file 文件。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:w ++enc&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;gbk                 &lt;span class=&#34;c1&#34;&gt;# 不管当前文件什么编码，把它转存成 GBK 编码。&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set encoding                &lt;span class=&#34;c1&#34;&gt;# Vim 内部编码查看          &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set &lt;span class=&#34;nv&#34;&gt;encoding&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;UTF-8          &lt;span class=&#34;c1&#34;&gt;# Vim 内部编码修改&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set fileencoding            &lt;span class=&#34;c1&#34;&gt;# 当前编辑的文件字符编码查看          &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set &lt;span class=&#34;nv&#34;&gt;fileencoding&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;UTF-8      &lt;span class=&#34;c1&#34;&gt;# 当前编辑的文件字符编码修改&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set fileencodings           &lt;span class=&#34;c1&#34;&gt;# 查看 Vim 自动探测 fileencoding 的顺序列表          &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:set &lt;span class=&#34;nv&#34;&gt;fileencodings&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;UTF-8     &lt;span class=&#34;c1&#34;&gt;# 修改 Vim 自动探测 fileencoding 的顺序列表&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; mbyte-options        &lt;span class=&#34;c1&#34;&gt;# 查看 文件编码 帮助文档&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;文件编码说明。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;encoding（缩写：enc）: Vim 内部使用的字符编码方式，包括 Vim 的缓冲区、菜单文本、消息文本等。这个值一般用户不要设置，另外打开 Vim 之后再设置这个值也是没有意义的。大家可以将这个值看作是 Vim 程序自己的变量，如果在工作中遇到文件的编码问题，和 encoding 这个变量是万万没有关系的。&lt;/li&gt;
&lt;li&gt;fileencoding（缩写：fenc）: Vim 中当前编辑的文件的字符编码方式，Vim 保存文件时也会将文件保存为这种字符编码方式。&lt;/li&gt;
&lt;li&gt;fileencodings（缩写：fencs）: Vim 自动探测 fileencodings 的顺序列表，启动时会按照它所列出的字符编码方式 从前到后，逐一探测 即将打开的文件的字符编码方式，并且将 fileencoding 设置为最终探测到的字符编码方式。因此最好将 Unicode 编码方式放到这个列表的最前面，将拉丁语系编码方式 latin1 放到最后面。&lt;/li&gt;
&lt;li&gt;termencoding（缩写：tenc）: Vim 所工作的终端字符编码方式。如果在终端环境下使用 Vim，需要设置 termencoding 和终端所使用的编码一致。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;文件编码种类。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ucs-bom：非常严格的编码，非该编码的文件几乎没有可能被误判为 ucs-bom，因此一般放在第一位。&lt;/li&gt;
&lt;li&gt;utf-8：相当严格的编码，除了很短的文件之外也是几乎不可能被误判的，因此一般放在第二位。&lt;/li&gt;
&lt;li&gt;chinese：相对宽松的编码，在 Unix 里表示 GB2312，在 Windows 里表示 cp936，也就是 GBK 的别名。&lt;/li&gt;
&lt;li&gt;cp936：相对宽松的编码，cp936 是 GBK 的别名，是 GB2312 的超集，可以支持繁体汉字，也避免出现删除半个汉字的情况。&lt;/li&gt;
&lt;li&gt;latin1：最为宽松的编码，则放在列表的最后。&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;如果编码被误判了，解码后的结果就会显示为无法识别的乱码了。此时，如果你知道这个文件的正确编码，可以把 fileencodings 改成只有这一种编码，阻止任何 fall-back 发生，然后重新打开这个文件。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;帮助信息&#34;&gt;
    &lt;a href=&#34;#%e5%b8%ae%e5%8a%a9%e4%bf%a1%e6%81%af&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    帮助信息
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-62-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-62-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;elp&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;command&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 显示相关命令的帮助，也可以就输入 :help 而不跟命令，退出帮助需要输入 :q&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h tutor            &lt;span class=&#34;c1&#34;&gt;# 入门文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h quickref         &lt;span class=&#34;c1&#34;&gt;# 快速帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h index            &lt;span class=&#34;c1&#34;&gt;# 查询 Vim 所有键盘命令定义&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h summary          &lt;span class=&#34;c1&#34;&gt;# 帮助你更好的使用内置帮助系统&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h Ctrl+H           &lt;span class=&#34;c1&#34;&gt;# 查询普通模式下 Ctrl+H 是干什么的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h i_Ctrl+H         &lt;span class=&#34;c1&#34;&gt;# 查询插入模式下 Ctrl+H 是干什么的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h i_&amp;lt;Up&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 查询插入模式下方向键上是干什么的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h pattern.txt      &lt;span class=&#34;c1&#34;&gt;# 正则表达式帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h &lt;span class=&#34;nb&#34;&gt;eval&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 脚本编写帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h &lt;span class=&#34;k&#34;&gt;function&lt;/span&gt;-list    &lt;span class=&#34;c1&#34;&gt;# 查看 VimScript 的函数列表 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h windows.txt      &lt;span class=&#34;c1&#34;&gt;# 窗口使用帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h tabpage.txt      &lt;span class=&#34;c1&#34;&gt;# 标签页使用帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h +timers          &lt;span class=&#34;c1&#34;&gt;# 显示对 +timers 特性的帮助&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h :!               &lt;span class=&#34;c1&#34;&gt;# 查看如何运行外部命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h tips             &lt;span class=&#34;c1&#34;&gt;# 查看 Vim 内置的常用技巧文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h set-termcap      &lt;span class=&#34;c1&#34;&gt;# 查看如何设置按键扫描码&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:viu&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;sage&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 显示普通命令的帮助。目的是为了模拟对应的 Nvi 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:exu&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;sage&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 显示 Ex 命令的帮助。目的是为了模拟对应的 Nvi 命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:ve&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;rsion&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;          &lt;span class=&#34;c1&#34;&gt;# 查看 Vim 版本，同时也查看 Vim 载入配置文件的优先顺序及所在位置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                        &lt;span class=&#34;c1&#34;&gt;# -------------------- 常用帮助信息 --------------------&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h aug&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;roup&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;            &lt;span class=&#34;c1&#34;&gt;# 查看自动命令组的帮助文档&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:h internal-variables   &lt;span class=&#34;c1&#34;&gt;# 获取更多变量作用域的帮助信息&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;有点意思&#34;&gt;
    &lt;a href=&#34;#%e6%9c%89%e7%82%b9%e6%84%8f%e6%80%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    有点意思
&lt;/h2&gt;
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-63-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-63-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;xp                  &lt;span class=&#34;c1&#34;&gt;# 交换两个字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ddp                 &lt;span class=&#34;c1&#34;&gt;# 交换两行&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bi                  &lt;span class=&#34;c1&#34;&gt;# 单词前加入字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ea                  &lt;span class=&#34;c1&#34;&gt;# 单词后加入字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;N&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;r&amp;lt;Enter&amp;gt;         &lt;span class=&#34;c1&#34;&gt;# 用一个换行符替换 N 个字符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;g Ctrl+G            &lt;span class=&#34;c1&#34;&gt;# 单词统计，按 g 再同时按 Ctrl+g 组合键&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;约定规范&#34;&gt;
    &lt;a href=&#34;#%e7%ba%a6%e5%ae%9a%e8%a7%84%e8%8c%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    约定规范
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;本文档使用的各种特定字符，按照以下内容进行约定规范。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-64-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-64-9&#34;&gt;9&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[]&lt;/span&gt;                  &lt;span class=&#34;c1&#34;&gt;# 表示方括号里的字符可选，可达到减少键盘输入及重复操作的目的&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;count&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;             &lt;span class=&#34;c1&#34;&gt;# 可选的数值，可用在命令前以倍数或重复该命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;x]                # 可选的用于存储文本的寄存器。参见 registers，x 代表从 &amp;#39;a-zA-z&amp;#39; 的英文字母
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;{}                  # 花括号里的内容是命令中必须出现的，但是可以取不同的值
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;{char1-char2}       # 在 char1 到 char2 区间内的 1 个字符，例如 {a-z} 是一个小写字母
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;{motion}            # 表示动作，移动光标的命令或动作
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;{operator}          # 表示操作符，用于对文本进行删除或修改操作的命令
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;{visual}            # 选中的文本区域，先用 v、V 或者 Ctrl+v 设定开始位置，然后用移动光标的命令来选定选择文本的另一端
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;Ctrl+{char}         # 作为控制字符输入的 {char}；即按住 Ctrl 键再按 {char}，{char} 是大写字母还是小写字母都一样&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;按键说明&#34;&gt;
    &lt;a href=&#34;#%e6%8c%89%e9%94%ae%e8%af%b4%e6%98%8e&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    按键说明
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;下面这些按键的名称文档里会用到。它们也可以用在 :map 映射命令里，详情参见 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;./vimrc&#34; &gt;vimrc 配置文件


&lt;/a&gt;


&lt;/strong&gt;。&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-55&#34;&gt;55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-65-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-65-56&#34;&gt;56&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;标识符               &lt;span class=&#34;c1&#34;&gt;# 含义&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Nul&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 数字 0 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;BS&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 退格键 &amp;lt;Backspace&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Tab&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 制表符 &amp;lt;Tab&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;NL&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 换行符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;FF&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 换页符&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;CR&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 回车符 &amp;lt;Enter&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Return&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 同 &amp;lt;CR&amp;gt; 即 &amp;lt;Return&amp;gt; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Enter&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 同 &amp;lt;CR&amp;gt; 即 &amp;lt;Enter&amp;gt; &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Esc&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 转义 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Space&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 空格键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;lt&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 小于号 &amp;lt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Bslash&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 反斜杠 \&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Bar&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 竖杠 |&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Del&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 删除键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;CSI&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 命令序列引入&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;xCSI&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 图形界面的 CSI&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;EOL&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# 行尾 (可以是 &amp;lt;CR&amp;gt;、&amp;lt;NL&amp;gt; 或 &amp;lt;CR&amp;gt;&amp;lt;NL&amp;gt;，根据不同的系统和 fileformat 而定)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Up&amp;gt;                &lt;span class=&#34;c1&#34;&gt;# 光标上移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Down&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 光标下移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Left&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 光标左移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Right&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 光标右移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-Up&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 光标上移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-Down&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 光标下移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-Left&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 光标左移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-Right&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 光标右移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;C-Left&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# Ctrl ＋ 光标左移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;C-Right&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# Ctrl ＋ 光标右移键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;F1&amp;gt;-&amp;lt;F12&amp;gt;          &lt;span class=&#34;c1&#34;&gt;# 功能键 1 到 12&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-F1&amp;gt;-&amp;lt;S-F12&amp;gt;      &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 功能键 1 到 12 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Help&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 帮助键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Undo&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 撤销键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Insert&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# Insert 键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;Home&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# Home&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;End&amp;gt;               &lt;span class=&#34;c1&#34;&gt;# End&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;PageUp&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# Page-up&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;PageDown&amp;gt;          &lt;span class=&#34;c1&#34;&gt;# Page-down&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kHome&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 小键盘 Home (左上)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kEnd&amp;gt;              &lt;span class=&#34;c1&#34;&gt;# 小键盘 End (左下)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kPageUp&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 小键盘 Page-up (右上)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kPageDown&amp;gt;         &lt;span class=&#34;c1&#34;&gt;# 小键盘 Page-down (右下)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kPlus&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 小键盘 +&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kMinus&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 小键盘 -&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kMultiply&amp;gt;         &lt;span class=&#34;c1&#34;&gt;# 小键盘 *&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kDivide&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 小键盘 /&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kEnter&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 小键盘 Enter&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;kPoint&amp;gt;            &lt;span class=&#34;c1&#34;&gt;# 小键盘 小数点&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;k0&amp;gt;-&amp;lt;k9&amp;gt;           &lt;span class=&#34;c1&#34;&gt;# 小键盘 0 到 9&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;S-...&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# Shift ＋ 其它键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;C-...&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# Ctr ＋ 其它键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;M-...&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# Alt ＋ 键 或 Meta ＋ 键&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;lt;A-...&amp;gt;             &lt;span class=&#34;c1&#34;&gt;# 同 &amp;lt;M-...&amp;gt;    &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;使用建议&#34;&gt;
    &lt;a href=&#34;#%e4%bd%bf%e7%94%a8%e5%bb%ba%e8%ae%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    使用建议
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;多使用 :h[elp] {command} 获取显示相关命令的帮助文档，提高相关命令的认识水平。&lt;/li&gt;
&lt;li&gt;永远不要用 Ctrl+C 代替 &lt;Esc&gt; 完全不同的含义，容易错误中断运行的后台脚本。&lt;/li&gt;
&lt;li&gt;很多人使用 Ctrl+[ 代替 &lt;Esc&gt;，左手小指 Ctrl，右手小指 [ 熟练后很方便。&lt;/li&gt;
&lt;li&gt;某些终端中使用 Vim 8 内嵌终端如看到奇怪字符，使用 :set t_RS= t_SH= 解决。&lt;/li&gt;
&lt;li&gt;某些终端中使用 NeoVim 如看到奇怪字符，使用 :set guicursor= 解决。&lt;/li&gt;
&lt;li&gt;多使用 ciw, ci[, ci&amp;rdquo;, ci( 以及 diw, di[, di&amp;rdquo;, di( 命令来快速改写/删除文本。&lt;/li&gt;
&lt;li&gt;在行内左右移动光标时，多使用 w b e 或 W B E，而不是 h l 或方向键，这样会快很多。&lt;/li&gt;
&lt;li&gt;Shift 上档键相当于移动加速键， w b e 移动光标很慢，但是 W B E 走的很快。&lt;/li&gt;
&lt;li&gt;自己要善于总结新技巧，例如移动到行首非空字符时用 0w 命令比 ^ 命令更容易输入。&lt;/li&gt;
&lt;li&gt;在空白行使用 dip 命令可以删除所有临近的空白行，viw 可以选择连续空白。&lt;/li&gt;
&lt;li&gt;缩进时使用 &amp;gt;8j &amp;gt;} &lt;ap &gt;ap =i} == 会方便很多；文档以 常规、6、9 个空格间隔缩进。&lt;/li&gt;
&lt;li&gt;插入模式下，当你发现一个单词写错了，应该多用 Ctrl+W 这比 &lt;Backspace&gt; 退格键快。&lt;/li&gt;
&lt;li&gt;y d c 命令可以很好结合 f t 和 /X 例如 dt) 和 y/End&lt;cr&gt;。&lt;/li&gt;
&lt;li&gt;c d x 命令会自动填充寄存器 &amp;ldquo;1 到 &amp;ldquo;9 ，y 命令会自动填充 &amp;ldquo;0 寄存器。&lt;/li&gt;
&lt;li&gt;用 v 命令选择文本时，可以用 0 掉头选择，有时很有用。&lt;/li&gt;
&lt;li&gt;写文章时，可以写一段代码块，然后选中后执行 :!python 代码块就会被替换成结果。&lt;/li&gt;
&lt;li&gt;搜索后经常使用 :nohl 来消除高亮，使用很频繁，可以 map 到 &lt;Backspace&gt; 上。&lt;/li&gt;
&lt;li&gt;搜索时可以用 Ctrl+R Ctrl+W 插入光标下的单词，命令模式也能这么用。&lt;/li&gt;
&lt;li&gt;映射按键时，应该默认使用 noremap ，只有特别需要的时候使用 map。&lt;/li&gt;
&lt;li&gt;用 y 复制文本后，命令模式中 Ctrl+R 然后按双引号 0 可以插入之前复制内容。&lt;/li&gt;
&lt;li&gt;Windows 下的 GVim 可以设置 set rop=type:directx, renmode:5 增强显示。&lt;/li&gt;
&lt;li&gt;当你觉得做某事很低效时，你应该停下来，然后思考正确的高效方式来完成。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;网络资源&#34;&gt;
    &lt;a href=&#34;#%e7%bd%91%e7%bb%9c%e8%b5%84%e6%ba%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    网络资源
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;最新版本 Vim：https://github.com/vim/vim&lt;/li&gt;
&lt;li&gt;Windows 版：https://github.com/vim/vim-win32-installer/releases&lt;/li&gt;
&lt;li&gt;插件浏览：http://vimawesome.com&lt;/li&gt;
&lt;li&gt;正确设置 Alt 换挡键：http://www.skywind.me/blog/archives/2021&lt;/li&gt;
&lt;li&gt;视频教程：http://vimcasts.org/&lt;/li&gt;
&lt;li&gt;中文帮助：http://vimcdoc.sourceforge.net/doc/help.html&lt;/li&gt;
&lt;li&gt;中文版入门到精通：https://github.com/wsdjeg/vim-galore-zh_cn&lt;/li&gt;
&lt;li&gt;五分钟脚本入门：http://www.skywind.me/blog/archives/2193&lt;/li&gt;
&lt;li&gt;脚本精通：http://learnvimscriptthehardway.stevelosh.com/&lt;/li&gt;
&lt;li&gt;十六年使用经验：http://zzapper.co.uk/vimtips.html&lt;/li&gt;
&lt;li&gt;配色方案：http://vimcolors.com/&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;vim键盘图&#34;&gt;
    &lt;a href=&#34;#vim%e9%94%ae%e7%9b%98%e5%9b%be&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    vim键盘图
&lt;/h2&gt;&lt;p&gt;


    &lt;img src=&#34;images/vim-commands_CN.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 命令键盘图&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;images/advanced.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 详细键盘图&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;其他图&#34;&gt;
    &lt;a href=&#34;#%e5%85%b6%e4%bb%96%e5%9b%be&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    其他图
&lt;/h2&gt;&lt;p&gt;


    &lt;img src=&#34;images/entry.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 移动&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;images/text-cn.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;中文文字版&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;images/morden.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 更详细&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;images/text.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 文字版&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;正则表达式的模式&#34;&gt;
    &lt;a href=&#34;#%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f%e7%9a%84%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    正则表达式的模式
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;默认是 magic,正则表达式元字符如 .、*、? 等是有效的&lt;/li&gt;
&lt;li&gt;nomagic 模式下，只有 ^ 和 $ 仍作为元字符，其它的元字符需要转义才能使用&lt;/li&gt;
&lt;li&gt;very magic 模式下，几乎所有字符都被视为元字符，不需要转义&lt;/li&gt;
&lt;li&gt;very nomagic 模式下，几乎所有字符都被视为普通字符，必须显式转义&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;


    &lt;img src=&#34;images/vim-magic-mode.jpg&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 匹配&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;images/vim-magic-mode-demo.jpg&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;vim 匹配举例&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;ctrl按键&#34;&gt;
    &lt;a href=&#34;#ctrl%e6%8c%89%e9%94%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    Ctrl按键
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;&lt;code&gt;CtrlKey&lt;/code&gt;&lt;/th&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;Normal&lt;/th&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;Insert&lt;/th&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;Visual&lt;/th&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;Command&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-a&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;将光标下的数字加1&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;插入上一次插入的文本(i文本&lt;code&gt;esc&lt;/code&gt;a&lt;code&gt;C-a&lt;/code&gt;)&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;将光标下的数字加1&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: center&#34;&gt;&lt;code&gt;C-b&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;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: center&#34;&gt;&lt;code&gt;C-c&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;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: center&#34;&gt;&lt;code&gt;C-d&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;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: center&#34;&gt;&lt;code&gt;C-e&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;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: center&#34;&gt;&lt;code&gt;C-f&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;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: center&#34;&gt;&lt;code&gt;C-g&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;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: center&#34;&gt;&lt;code&gt;C-h&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;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: center&#34;&gt;&lt;code&gt;C-i&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;code&gt;Tab&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-j&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;code&gt;CR&lt;/code&gt;和&lt;code&gt;C-m&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-k&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;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: center&#34;&gt;&lt;code&gt;C-l&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;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: center&#34;&gt;&lt;code&gt;C-m&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;code&gt;CR&lt;/code&gt;和&lt;code&gt;C-j&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-n&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;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: center&#34;&gt;&lt;code&gt;C-o&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;strong&gt;插入模式中的单命令执行&lt;/strong&gt;：在插入模式下按 &lt;code&gt;Ctrl-O&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-p&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;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: center&#34;&gt;&lt;code&gt;C-q&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;进入可视块模式(等同于&lt;code&gt;C-v&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;td style=&#34;text-align: left&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-r&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;按下&lt;code&gt;u&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;td style=&#34;text-align: left&#34;&gt;插入寄存器内容&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-s&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;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: center&#34;&gt;&lt;code&gt;C-t&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;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: center&#34;&gt;&lt;code&gt;C-u&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;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: center&#34;&gt;&lt;code&gt;C-v&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;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: center&#34;&gt;&lt;code&gt;C-w&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;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: center&#34;&gt;&lt;code&gt;C-x&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;code&gt;Ctrl-X 模式&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-y&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;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: center&#34;&gt;&lt;code&gt;C-z&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;挂起 Vim（在 Unix 系统中）&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: center&#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;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: center&#34;&gt;&lt;code&gt;C-[&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;code&gt;Esc&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-\&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;/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: center&#34;&gt;&lt;code&gt;C-]&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;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: center&#34;&gt;&lt;code&gt;C-^&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;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: center&#34;&gt;&lt;code&gt;C-@&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;code&gt;NUL&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;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;C-0&lt;/code&gt;到 &lt;code&gt;C-9&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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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: center&#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;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;h2 id=&#34;ctrl-x模式&#34;&gt;
    &lt;a href=&#34;#ctrl-x%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    Ctrl-X模式
&lt;/h2&gt;&lt;p&gt;在 Vim 中，&lt;code&gt;Ctrl-X&lt;/code&gt; 模式是插入模式下的一组补全命令，可以提供多种类型的补全。以下是常用的 &lt;code&gt;Ctrl-X&lt;/code&gt; 模式补全类型及其作用：&lt;/p&gt;
&lt;h3 id=&#34;常见的-ctrl-x-模式补全类型&#34;&gt;
    &lt;a href=&#34;#%e5%b8%b8%e8%a7%81%e7%9a%84-ctrl-x-%e6%a8%a1%e5%bc%8f%e8%a1%a5%e5%85%a8%e7%b1%bb%e5%9e%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    常见的 &lt;code&gt;Ctrl-X&lt;/code&gt; 模式补全类型
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;文件名补全（Ctrl-X Ctrl-F）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-F&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：补全文件名。&lt;/li&gt;
&lt;li&gt;用法：输入文件路径的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-F&lt;/code&gt; 来补全文件名。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;关键字补全（Ctrl-N 和 Ctrl-P）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-N&lt;/code&gt;（下一个）、&lt;code&gt;Ctrl-P&lt;/code&gt;（上一个）&lt;/li&gt;
&lt;li&gt;功能：补全当前缓冲区中出现的关键字。&lt;/li&gt;
&lt;li&gt;用法：输入关键字的部分内容，然后按 &lt;code&gt;Ctrl-N&lt;/code&gt; 或 &lt;code&gt;Ctrl-P&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;字典补全（Ctrl-X Ctrl-K）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-K&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：根据字典文件补全单词。&lt;/li&gt;
&lt;li&gt;用法：输入单词的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-K&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;标签补全（Ctrl-X Ctrl-]）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：根据标签补全。&lt;/li&gt;
&lt;li&gt;用法：输入标签的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-]&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;文件中的定义补全（Ctrl-X Ctrl-I）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-I&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：补全当前文件中所有包含的定义。&lt;/li&gt;
&lt;li&gt;用法：输入单词的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-I&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;用户定义补全（Ctrl-X Ctrl-U）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-U&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：使用用户定义的补全方法。&lt;/li&gt;
&lt;li&gt;用法：输入单词的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-U&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;拼写建议补全（Ctrl-X Ctrl-S）&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;快捷键：&lt;code&gt;Ctrl-X Ctrl-S&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;功能：提供拼写建议。&lt;/li&gt;
&lt;li&gt;用法：输入单词的部分内容，然后按 &lt;code&gt;Ctrl-X Ctrl-S&lt;/code&gt; 来补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;完整的 Ctrl-X 补全菜单&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ctrl-X Ctrl-L&lt;/code&gt;：整行补全。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ctrl-X Ctrl-V&lt;/code&gt;：补全 Vim 选项。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ctrl-X Ctrl-D&lt;/code&gt;：宏定义补全。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ctrl-X Ctrl-O&lt;/code&gt;：补全 Omni 语法（如 LSP 补全）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;示例操作&#34;&gt;
    &lt;a href=&#34;#%e7%a4%ba%e4%be%8b%e6%93%8d%e4%bd%9c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    示例操作
&lt;/h3&gt;&lt;h4 id=&#34;文件名补全&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e5%90%8d%e8%a1%a5%e5%85%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件名补全
&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;输入部分文件路径，例如 &lt;code&gt;~/do&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;按 &lt;code&gt;Ctrl-X Ctrl-F&lt;/code&gt;，Vim 会尝试补全文件名，例如补全为 &lt;code&gt;~/documents/&lt;/code&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;关键字补全&#34;&gt;
    &lt;a href=&#34;#%e5%85%b3%e9%94%ae%e5%ad%97%e8%a1%a5%e5%85%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    关键字补全
&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;输入部分单词，例如 &lt;code&gt;var&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;按 &lt;code&gt;Ctrl-N&lt;/code&gt; 或 &lt;code&gt;Ctrl-P&lt;/code&gt;，Vim 会在当前缓冲区中搜索关键字并补全，例如补全为 &lt;code&gt;various&lt;/code&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;h4 id=&#34;标签补全代码中的标识符如函数名变量名类名等&#34;&gt;
    &lt;a href=&#34;#%e6%a0%87%e7%ad%be%e8%a1%a5%e5%85%a8%e4%bb%a3%e7%a0%81%e4%b8%ad%e7%9a%84%e6%a0%87%e8%af%86%e7%ac%a6%e5%a6%82%e5%87%bd%e6%95%b0%e5%90%8d%e5%8f%98%e9%87%8f%e5%90%8d%e7%b1%bb%e5%90%8d%e7%ad%89&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    标签补全(代码中的标识符，如函数名、变量名、类名等)
&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;输入部分标签名，例如 &lt;code&gt;fea&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;按 &lt;code&gt;Ctrl-X Ctrl-]&lt;/code&gt;，Vim 会根据标签补全，例如补全为 &lt;code&gt;features&lt;/code&gt;。&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
</description>
        </item>
        <item>
        <title>linux常用命令</title>
        <link>https://qh.1357810.xyz/articles/linux/linux-command/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/linux-command/</guid>
        <description>&lt;ul&gt;
&lt;li&gt;ctrl+u 删除一行&lt;/li&gt;
&lt;li&gt;ctrl+w 删除上一个字符&lt;/li&gt;
&lt;li&gt;ctrl+a 光标移入当前行首&lt;/li&gt;
&lt;li&gt;ctrl+e 光标移入当前行尾&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>nohup命令</title>
        <link>https://qh.1357810.xyz/articles/linux/linux-nohup/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/linux-nohup/</guid>
        <description>&lt;h2 id=&#34;1问题&#34;&gt;
    &lt;a href=&#34;#1%e9%97%ae%e9%a2%98&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1、问题
&lt;/h2&gt;&lt;p&gt;我们把一个 SpringBoot 工程导出为 jar 包，jar 包上传到阿里云 ECS 服务器上，使用 java -jar xxx-xxx.jar 命令启动这个 SpringBoot 程序。此时我们本地的 xshell 客户端必须一直开着，一旦 xshell 客户端关闭，java -jar xxx-xxx.jar 进程就会被结束，SpringBoot 程序就访问不了了。&lt;/p&gt;
&lt;p&gt;所以我们希望启动 SpringBoot 的 jar 包之后，对应的进程可以一直运行，不会因为 xshell 客户端关闭而被结束。&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220410/20220410054728.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;./images&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;2解决&#34;&gt;
    &lt;a href=&#34;#2%e8%a7%a3%e5%86%b3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2、解决
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;前台、后台运行&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;​	默认情况下 Linux 命令都是前台运行的，前台运行的特点是前面命令不执行完，命令行就一直被前面的命令占用，不能再输入、执行新的命令。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;cp&#34;&gt;#!/bin/bash
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;hello before sleep&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sleep &lt;span class=&#34;m&#34;&gt;20&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;hello after sleep&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;前台（默认情况）运行上面脚本的效果是：&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220410/20220410054847.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;./images&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;后台运行上面脚本的效果是：&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220410/20220410054858.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;./images&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;但是以后台方式运行并不能解决前面提出的问题：我们的 shell 客户端（例如：xshell）和服务器断开连接后，SpringBoot 进程会随之结束，这显然不满足我们部署运行项目的初衷。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;不挂断运行&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所谓“不挂断”就是指客户端断开连接后，命令启动的进程仍然运行。nohup 命令就是 ”no hang up“ 的缩写。使用nohup 命令启动 SpringBoot 微服务工程的完整写法是：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nohup java -jar spring-boot-demo.jar&amp;gt;springboot.log 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220410/20220410055051.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;./images&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
</description>
        </item>
        <item>
        <title>ohmyzsh使用教程</title>
        <link>https://qh.1357810.xyz/articles/linux/ohmyzsh/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/ohmyzsh/</guid>
        <description>&lt;h1 id=&#34;mac安装和配置ohmyzsh&#34;&gt;
    &lt;a href=&#34;#mac%e5%ae%89%e8%a3%85%e5%92%8c%e9%85%8d%e7%bd%aeohmyzsh&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    mac安装和配置ohmyzsh
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;1、ohmyzsh项目默认目录为 ～/.ohmyzsh ，github项目地址为：https://github.com/ohmyzsh/ohmyzsh&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;2、配置文件默认目录为  ～/.zshrc  my zshrc save in github&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;3、安装ohmyzsh&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sh -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;4、安装插件&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/zsh-users/zsh-syntax-highlighting&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/zsh-users/zsh-syntax-highlighting


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


  ~/.oh-my-zsh/custom/plugins&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/zsh-users/zsh-syntax-highlighting.git &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;/plugins/zsh-syntax-highlighting&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/zsh-users/zsh-autosuggestions&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/zsh-users/zsh-autosuggestions


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


  ~/.oh-my-zsh/custom/plugins&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/zsh-users/zsh-autosuggestions &lt;span class=&#34;si&#34;&gt;${&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;:-&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;}&lt;/span&gt;/plugins/zsh-autosuggestions&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/wting/autojump&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/wting/autojump


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install autojump
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 直接配置在zshrc中的plugins里&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zsh直接通过.oh-my-zsh/plugins/autojump/autojump.plugin.zsh寻找autojump安装路径&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 从而实现功能&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;4、安装字体 font-hack-nerd-font&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install font-hack-nerd-font --cask&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;5、安装主题 dracula  &lt;a class=&#34;link&#34; href=&#34;https://draculatheme.com/zsh&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://draculatheme.com/zsh


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;软连接方式&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/dracula/zsh.git
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ln -s $DRACULA_THEME/dracula.zsh-theme $OH_MY_ZSH/themes/dracula.zsh-theme&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;文件方式&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-ini&#34; data-lang=&#34;ini&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;1、Download using the GitHub .zip download option and unzip them.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;2、Move dracula.zsh-theme file to oh-my-zsh&amp;#39;s theme folder: oh-my-zsh/themes/dracula.zsh-theme.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;na&#34;&gt;3、Move /lib to oh-my-zsh&amp;#39;s theme folder: oh-my-zsh/themes/lib.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;我自己修改的 放在 ~/.oh-my-zsh/custom/themes/mydracula.zsh-theme&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-1&#34;&gt;  1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-2&#34;&gt;  2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-3&#34;&gt;  3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-4&#34;&gt;  4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-5&#34;&gt;  5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-6&#34;&gt;  6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-7&#34;&gt;  7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-8&#34;&gt;  8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-9&#34;&gt;  9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-10&#34;&gt; 10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-11&#34;&gt; 11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-12&#34;&gt; 12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-13&#34;&gt; 13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-14&#34;&gt; 14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-15&#34;&gt; 15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-16&#34;&gt; 16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-17&#34;&gt; 17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-18&#34;&gt; 18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-19&#34;&gt; 19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-20&#34;&gt; 20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-21&#34;&gt; 21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-22&#34;&gt; 22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-23&#34;&gt; 23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-24&#34;&gt; 24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-25&#34;&gt; 25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-26&#34;&gt; 26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-27&#34;&gt; 27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-28&#34;&gt; 28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-29&#34;&gt; 29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-30&#34;&gt; 30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-31&#34;&gt; 31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-32&#34;&gt; 32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-33&#34;&gt; 33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-34&#34;&gt; 34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-35&#34;&gt; 35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-36&#34;&gt; 36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-37&#34;&gt; 37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-38&#34;&gt; 38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-39&#34;&gt; 39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-40&#34;&gt; 40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-41&#34;&gt; 41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-42&#34;&gt; 42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-43&#34;&gt; 43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-44&#34;&gt; 44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-45&#34;&gt; 45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-46&#34;&gt; 46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-47&#34;&gt; 47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-48&#34;&gt; 48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-49&#34;&gt; 49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-50&#34;&gt; 50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-51&#34;&gt; 51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-52&#34;&gt; 52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-53&#34;&gt; 53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-54&#34;&gt; 54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-55&#34;&gt; 55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-56&#34;&gt; 56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-57&#34;&gt; 57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-58&#34;&gt; 58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-59&#34;&gt; 59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-60&#34;&gt; 60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-61&#34;&gt; 61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-62&#34;&gt; 62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-63&#34;&gt; 63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-64&#34;&gt; 64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-65&#34;&gt; 65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-66&#34;&gt; 66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-67&#34;&gt; 67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-68&#34;&gt; 68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-69&#34;&gt; 69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-70&#34;&gt; 70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-71&#34;&gt; 71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-72&#34;&gt; 72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-73&#34;&gt; 73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-74&#34;&gt; 74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-75&#34;&gt; 75&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-76&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-76&#34;&gt; 76&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-77&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-77&#34;&gt; 77&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-78&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-78&#34;&gt; 78&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-79&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-79&#34;&gt; 79&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-80&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-80&#34;&gt; 80&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-81&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-81&#34;&gt; 81&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-82&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-82&#34;&gt; 82&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-83&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-83&#34;&gt; 83&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-84&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-84&#34;&gt; 84&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-85&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-85&#34;&gt; 85&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-86&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-86&#34;&gt; 86&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-87&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-87&#34;&gt; 87&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-88&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-88&#34;&gt; 88&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-89&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-89&#34;&gt; 89&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-90&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-90&#34;&gt; 90&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-91&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-91&#34;&gt; 91&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-92&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-92&#34;&gt; 92&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-93&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-93&#34;&gt; 93&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-94&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-94&#34;&gt; 94&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-95&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-95&#34;&gt; 95&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-96&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-96&#34;&gt; 96&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-97&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-97&#34;&gt; 97&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-98&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-98&#34;&gt; 98&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-99&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-99&#34;&gt; 99&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-100&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-100&#34;&gt;100&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-101&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-101&#34;&gt;101&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-102&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-102&#34;&gt;102&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-103&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-103&#34;&gt;103&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-104&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-104&#34;&gt;104&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-105&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-105&#34;&gt;105&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-106&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-106&#34;&gt;106&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-107&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-107&#34;&gt;107&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-108&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-108&#34;&gt;108&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-109&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-109&#34;&gt;109&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-110&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-110&#34;&gt;110&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-111&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-111&#34;&gt;111&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-112&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-112&#34;&gt;112&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-113&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-113&#34;&gt;113&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-114&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-114&#34;&gt;114&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-115&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-115&#34;&gt;115&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-116&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-116&#34;&gt;116&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-117&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-117&#34;&gt;117&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-118&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-118&#34;&gt;118&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-119&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-119&#34;&gt;119&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-120&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-120&#34;&gt;120&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-121&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-121&#34;&gt;121&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-122&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-122&#34;&gt;122&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-123&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-123&#34;&gt;123&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-124&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-124&#34;&gt;124&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-125&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-125&#34;&gt;125&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-126&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-126&#34;&gt;126&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-127&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-127&#34;&gt;127&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-128&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-128&#34;&gt;128&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-129&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-129&#34;&gt;129&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-130&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-130&#34;&gt;130&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-131&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-131&#34;&gt;131&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-132&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-132&#34;&gt;132&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-133&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-133&#34;&gt;133&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-134&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-134&#34;&gt;134&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-135&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-135&#34;&gt;135&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-136&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-136&#34;&gt;136&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-137&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-137&#34;&gt;137&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-138&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-138&#34;&gt;138&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-139&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-139&#34;&gt;139&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-140&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-140&#34;&gt;140&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-141&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-141&#34;&gt;141&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-142&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-142&#34;&gt;142&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-143&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-143&#34;&gt;143&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-144&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-144&#34;&gt;144&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-145&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-145&#34;&gt;145&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-146&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-146&#34;&gt;146&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-147&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-147&#34;&gt;147&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-148&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-148&#34;&gt;148&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-149&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-149&#34;&gt;149&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-150&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-150&#34;&gt;150&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-151&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-151&#34;&gt;151&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-152&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-152&#34;&gt;152&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-153&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-153&#34;&gt;153&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-154&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-154&#34;&gt;154&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-155&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-155&#34;&gt;155&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-156&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-156&#34;&gt;156&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-157&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-157&#34;&gt;157&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-158&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-158&#34;&gt;158&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-159&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-159&#34;&gt;159&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-160&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-160&#34;&gt;160&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-161&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-161&#34;&gt;161&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-162&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-162&#34;&gt;162&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-163&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-163&#34;&gt;163&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-164&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-164&#34;&gt;164&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-165&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-165&#34;&gt;165&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-166&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-166&#34;&gt;166&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-167&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-167&#34;&gt;167&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-168&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-168&#34;&gt;168&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-169&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-169&#34;&gt;169&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-170&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-170&#34;&gt;170&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-171&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-171&#34;&gt;171&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-172&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-172&#34;&gt;172&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-173&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-173&#34;&gt;173&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-174&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-174&#34;&gt;174&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-175&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-175&#34;&gt;175&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-176&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-176&#34;&gt;176&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-177&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-177&#34;&gt;177&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-178&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-178&#34;&gt;178&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-179&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-179&#34;&gt;179&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-180&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-180&#34;&gt;180&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-181&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-181&#34;&gt;181&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-182&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-182&#34;&gt;182&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-183&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-183&#34;&gt;183&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-184&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-184&#34;&gt;184&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-185&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-185&#34;&gt;185&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-186&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-186&#34;&gt;186&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-187&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-187&#34;&gt;187&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-188&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-188&#34;&gt;188&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-189&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-189&#34;&gt;189&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-190&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-190&#34;&gt;190&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-191&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-191&#34;&gt;191&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-192&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-192&#34;&gt;192&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-193&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-193&#34;&gt;193&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-194&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-194&#34;&gt;194&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-195&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-195&#34;&gt;195&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-196&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-196&#34;&gt;196&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-197&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-197&#34;&gt;197&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-198&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-198&#34;&gt;198&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-199&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-199&#34;&gt;199&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-200&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-200&#34;&gt;200&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-201&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-201&#34;&gt;201&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-202&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-202&#34;&gt;202&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-203&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-203&#34;&gt;203&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-204&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-204&#34;&gt;204&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-205&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-205&#34;&gt;205&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-206&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-206&#34;&gt;206&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-207&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-207&#34;&gt;207&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-208&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-208&#34;&gt;208&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-209&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-209&#34;&gt;209&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-210&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-210&#34;&gt;210&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-211&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-211&#34;&gt;211&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-212&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-212&#34;&gt;212&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-213&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-213&#34;&gt;213&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-214&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-214&#34;&gt;214&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-215&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-215&#34;&gt;215&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-216&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-216&#34;&gt;216&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-217&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-217&#34;&gt;217&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-218&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-218&#34;&gt;218&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-219&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-219&#34;&gt;219&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-220&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-220&#34;&gt;220&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-221&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-221&#34;&gt;221&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-222&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-222&#34;&gt;222&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-223&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-223&#34;&gt;223&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-224&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-224&#34;&gt;224&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# -*- mode: sh; -*-&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# vim: set ft=sh :&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Dracula Theme v1.2.5&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/dracula/dracula-theme&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Copyright 2019, All rights reserved&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Code licensed under the MIT license&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# http://zenorocha.mit-license.org&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# @author Zeno Rocha &amp;lt;hi@zenorocha.com&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# @maintainer Avalon Williams &amp;lt;avalonwilliams@protonmail.com&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Initialization {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;source&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;A&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lib&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;async&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zsh&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;autoload&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Uz&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;add&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zsh&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hook&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;setopt&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;PROMPT_SUBST&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;async_init&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Options {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set to 0 to disable the git status&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_GIT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_GIT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set to 1 to show the date&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_TIME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_TIME&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set to 1 to show the &amp;#39;context&amp;#39; segment&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_CONTEXT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_CONTEXT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Changes the arrow icon&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_ARROW_ICON&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_ARROW_ICON&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;➜&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set to 1 to use an new line for commands&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_NEW_LINE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_NEW_LINE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# function to detect if git has support for --no-optional-locks&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_test_git_optional_lock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;git_version&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DEBUG_OVERRIDE_V&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;$(git version | cut -d&amp;#39; &amp;#39; -f3)&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;git_version&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;$(git version | cut -d&amp;#39; &amp;#39; -f3)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;c1&#34;&gt;# test for git versions &amp;lt; 2.14.0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;case&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$git_version&amp;#34;&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;mf&#34;&gt;2.&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;9&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;mf&#34;&gt;2.1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;esac&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;c1&#34;&gt;# if version &amp;gt; 2.14.0 return true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# use --no-optional-locks flag on git&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_GIT_NOLOCK&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_GIT_NOLOCK&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dracula_test_git_optional_lock&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Status segment {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# arrow is green if last command was successful, red if not, &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# turns yellow in vi command mode&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;!&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_NEW_LINE&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;));&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%(1V:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{yellow}:%(?:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{green}:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{red}))${DRACULA_ARROW_ICON} &amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Time segment {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_time_segment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_TIME&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;));&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;z&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$TIME_FORMAT&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]];&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;TIME_FORMAT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;%-H:%M:%S&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;c1&#34;&gt;# check if locale uses AM and PM&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;c1&#34;&gt;# if ! locale -ck LC_TIME | grep &amp;#39;am_pm=&amp;#34;;&amp;#34;&amp;#39; &amp;gt; /dev/null; then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;c1&#34;&gt;# 	TIME_FORMAT=&amp;#34;%-I:%M%p&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;c1&#34;&gt;# fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;P&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;%D{$TIME_FORMAT} &amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{green}%B$(dracula_time_segment)&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# User context segment {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_context&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_CONTEXT&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;));&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;${SSH_CONNECTION-}${SSH_CLIENT-}${SSH_TTY-}&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EUID&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;==&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;));&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;%n@%m &amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;%n &amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{magenta}%B$(dracula_context)&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Directory segment {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{blue}%B&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%c&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt; &amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Custom variable {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;function&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;custom_variable_prompt&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;z&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;DRACULA_CUSTOM_VARIABLE&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$FG[008]$DRACULA_CUSTOM_VARIABLE &amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;$(custom_variable_prompt)&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Async git segment {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_git_status&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;!&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_GIT&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;))&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;cd&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;ref&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;lockflag&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_GIT_NOLOCK&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;))&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;lockflag&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;--no-optional-locks&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;ref&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;git&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lockflag&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;symbolic&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ref&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;--&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quiet&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;HEAD&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;git&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;errors&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;case&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;?&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;in&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;   &lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;mi&#34;&gt;128&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;o&#34;&gt;*&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;ref&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;git&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;lockflag&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;rev&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;parse&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;--&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;short&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;HEAD&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;&amp;gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmp&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;git&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;errors&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;esac&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ref&lt;/span&gt;&lt;span class=&#34;c1&#34;&gt;#refs/heads/}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;branch&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]];&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;${ZSH_THEME_GIT_PROMPT_PREFIX}${branch}&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;git_status&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;icon&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;git_status&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;$(LC_ALL=C =git $lockflag status 2&amp;gt;&amp;amp;1)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$git_status&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=~&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;new file:|deleted:|modified:|renamed:|Untracked files:&amp;#39;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]];&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$ZSH_THEME_GIT_PROMPT_DIRTY&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;			&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$ZSH_THEME_GIT_PROMPT_CLEAN&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$ZSH_THEME_GIT_PROMPT_SUFFIX&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_git_callback&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;DRACULA_GIT_STATUS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;$3&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;reset&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;prompt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;async_stop_worker&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_worker&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_status&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$(pwd)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_git_async&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;async_start_worker&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_worker&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;async_register_callback&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_worker&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_callback&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;async_job&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_worker&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_status&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$(pwd)&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;add&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zsh&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;hook&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;precmd&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_git_async&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;$DRACULA_GIT_STATUS&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ZSH_THEME_GIT_PROMPT_CLEAN&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;) &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;{green}%B✔ &amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ZSH_THEME_GIT_PROMPT_DIRTY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;) &lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;{yellow}%B✗ &amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ZSH_THEME_GIT_PROMPT_PREFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;{cyan}%B(&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;ZSH_THEME_GIT_PROMPT_SUFFIX&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%f&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;%b&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Linebreak {{{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;((&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;DRACULA_DISPLAY_NEW_LINE&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;));&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=$&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\n&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;%(1V:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{yellow}:%(?:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{green}:&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%F&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;{red}))${DRACULA_ARROW_ICON} &amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# }}}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# define widget without clobbering old definitions&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_defwidget&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;fname&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dracula&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;wrap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;prev&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;l&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;L&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$1&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;local&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;oldfn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;prev&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;c1&#34;&gt;# if no existing zle functions, just define it normally&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;z&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$prev&amp;#34;&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]];&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;N&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;c1&#34;&gt;# if already defined, return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;${prev[4]}&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fname&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;return&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;oldfn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=$&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;prev&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]:&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;N&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;old&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oldfn&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;oldfn&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;eval&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;$fname() { $2 &lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\&amp;#34;&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;\$@&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\&amp;#34;&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;; zle dracula-old-$oldfn -- &lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\&amp;#34;&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;\$@&lt;/span&gt;&lt;span class=&#34;se&#34;&gt;\&amp;#34;&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;; }&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;N&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;fname&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ensure vi mode is handled by prompt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_zle_update&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[[&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;$&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;KEYMAP&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;vicmd&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;]];&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;psvar&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;vicmd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;k&#34;&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;		&lt;span class=&#34;n&#34;&gt;psvar&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;reset&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;prompt&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;	&lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;R&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_defwidget&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;line&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;init&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_zle_update&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;dracula_defwidget&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;zle&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;keymap&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;select&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;dracula_zle_update&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Ensure effects are reset&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;PROMPT&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;%f&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;%b&amp;#39;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;6、配置文件 ～/.zshrc&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-1&#34;&gt;  1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-2&#34;&gt;  2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-3&#34;&gt;  3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-4&#34;&gt;  4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-5&#34;&gt;  5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-6&#34;&gt;  6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-7&#34;&gt;  7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-8&#34;&gt;  8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-9&#34;&gt;  9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-10&#34;&gt; 10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-11&#34;&gt; 11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-12&#34;&gt; 12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-13&#34;&gt; 13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-14&#34;&gt; 14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-15&#34;&gt; 15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-16&#34;&gt; 16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-17&#34;&gt; 17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-18&#34;&gt; 18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-19&#34;&gt; 19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-20&#34;&gt; 20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-21&#34;&gt; 21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-22&#34;&gt; 22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-23&#34;&gt; 23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-24&#34;&gt; 24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-25&#34;&gt; 25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-26&#34;&gt; 26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-27&#34;&gt; 27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-28&#34;&gt; 28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-29&#34;&gt; 29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-30&#34;&gt; 30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-31&#34;&gt; 31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-32&#34;&gt; 32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-33&#34;&gt; 33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-34&#34;&gt; 34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-35&#34;&gt; 35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-36&#34;&gt; 36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-37&#34;&gt; 37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-38&#34;&gt; 38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-39&#34;&gt; 39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-40&#34;&gt; 40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-41&#34;&gt; 41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-42&#34;&gt; 42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-43&#34;&gt; 43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-44&#34;&gt; 44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-45&#34;&gt; 45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-46&#34;&gt; 46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-47&#34;&gt; 47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-48&#34;&gt; 48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-49&#34;&gt; 49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-50&#34;&gt; 50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-51&#34;&gt; 51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-52&#34;&gt; 52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-53&#34;&gt; 53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-54&#34;&gt; 54&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-55&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-55&#34;&gt; 55&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-56&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-56&#34;&gt; 56&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-57&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-57&#34;&gt; 57&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-58&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-58&#34;&gt; 58&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-59&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-59&#34;&gt; 59&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-60&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-60&#34;&gt; 60&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-61&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-61&#34;&gt; 61&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-62&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-62&#34;&gt; 62&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-63&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-63&#34;&gt; 63&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-64&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-64&#34;&gt; 64&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-65&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-65&#34;&gt; 65&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-66&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-66&#34;&gt; 66&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-67&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-67&#34;&gt; 67&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-68&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-68&#34;&gt; 68&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-69&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-69&#34;&gt; 69&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-70&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-70&#34;&gt; 70&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-71&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-71&#34;&gt; 71&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-72&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-72&#34;&gt; 72&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-73&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-73&#34;&gt; 73&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-74&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-74&#34;&gt; 74&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-75&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-75&#34;&gt; 75&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-76&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-76&#34;&gt; 76&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-77&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-77&#34;&gt; 77&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-78&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-78&#34;&gt; 78&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-79&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-79&#34;&gt; 79&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-80&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-80&#34;&gt; 80&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-81&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-81&#34;&gt; 81&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-82&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-82&#34;&gt; 82&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-83&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-83&#34;&gt; 83&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-84&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-84&#34;&gt; 84&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-85&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-85&#34;&gt; 85&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-86&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-86&#34;&gt; 86&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-87&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-87&#34;&gt; 87&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-88&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-88&#34;&gt; 88&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-89&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-89&#34;&gt; 89&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-90&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-90&#34;&gt; 90&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-91&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-91&#34;&gt; 91&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-92&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-92&#34;&gt; 92&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-93&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-93&#34;&gt; 93&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-94&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-94&#34;&gt; 94&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-95&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-95&#34;&gt; 95&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-96&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-96&#34;&gt; 96&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-97&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-97&#34;&gt; 97&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-98&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-98&#34;&gt; 98&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-99&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-99&#34;&gt; 99&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-100&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-100&#34;&gt;100&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-101&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-101&#34;&gt;101&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-102&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-102&#34;&gt;102&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-103&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-103&#34;&gt;103&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-104&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-104&#34;&gt;104&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-105&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-105&#34;&gt;105&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-106&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-106&#34;&gt;106&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-107&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-107&#34;&gt;107&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-108&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-108&#34;&gt;108&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-109&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-109&#34;&gt;109&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-110&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-110&#34;&gt;110&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-111&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-111&#34;&gt;111&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-112&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-112&#34;&gt;112&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-113&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-113&#34;&gt;113&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-114&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-114&#34;&gt;114&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-115&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-115&#34;&gt;115&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-116&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-116&#34;&gt;116&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-117&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-117&#34;&gt;117&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-118&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-118&#34;&gt;118&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-119&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-119&#34;&gt;119&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-120&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-120&#34;&gt;120&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-121&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-121&#34;&gt;121&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-122&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-122&#34;&gt;122&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-123&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-123&#34;&gt;123&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-124&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-124&#34;&gt;124&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-125&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-125&#34;&gt;125&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-126&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-126&#34;&gt;126&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-127&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-127&#34;&gt;127&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-128&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-128&#34;&gt;128&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-129&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-129&#34;&gt;129&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-130&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-130&#34;&gt;130&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-131&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-131&#34;&gt;131&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-132&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-132&#34;&gt;132&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-133&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-133&#34;&gt;133&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-134&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-134&#34;&gt;134&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-135&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-135&#34;&gt;135&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-136&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-136&#34;&gt;136&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-137&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-137&#34;&gt;137&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-138&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-138&#34;&gt;138&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-139&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-139&#34;&gt;139&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-140&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-140&#34;&gt;140&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-141&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-141&#34;&gt;141&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-142&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-142&#34;&gt;142&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-143&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-143&#34;&gt;143&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-144&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-144&#34;&gt;144&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-145&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-145&#34;&gt;145&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-146&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-146&#34;&gt;146&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-147&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-147&#34;&gt;147&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-148&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-148&#34;&gt;148&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-149&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-149&#34;&gt;149&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-150&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-150&#34;&gt;150&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-151&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-151&#34;&gt;151&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-152&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-152&#34;&gt;152&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-153&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-153&#34;&gt;153&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-154&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-154&#34;&gt;154&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-155&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-155&#34;&gt;155&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-156&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-156&#34;&gt;156&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-157&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-157&#34;&gt;157&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-158&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-158&#34;&gt;158&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-159&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-159&#34;&gt;159&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-160&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-160&#34;&gt;160&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-161&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-161&#34;&gt;161&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-162&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-162&#34;&gt;162&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-163&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-163&#34;&gt;163&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-164&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-164&#34;&gt;164&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-165&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-165&#34;&gt;165&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-166&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-166&#34;&gt;166&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-167&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-167&#34;&gt;167&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-168&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-168&#34;&gt;168&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-169&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-169&#34;&gt;169&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-170&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-170&#34;&gt;170&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-171&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-171&#34;&gt;171&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-172&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-172&#34;&gt;172&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-173&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-173&#34;&gt;173&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-174&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-174&#34;&gt;174&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-175&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-175&#34;&gt;175&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-176&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-176&#34;&gt;176&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-177&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-177&#34;&gt;177&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-178&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-178&#34;&gt;178&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-179&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-179&#34;&gt;179&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-180&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-180&#34;&gt;180&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# If you come from bash you might have to change your $PATH.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;/bin:/usr/local/bin:&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Path to your oh-my-zsh installation.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ZSH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/.oh-my-zsh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set name of the theme to load --- if set to &amp;#34;random&amp;#34;, it will&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# load a random theme each time oh-my-zsh is loaded, in which case,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# to know which specific one was loaded, run: echo $RANDOM_THEME&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#ZSH_THEME=&amp;#34;agnoster&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ZSH_THEME=&amp;#34;dracula&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;ZSH_THEME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;mydracula&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#ZSH_THEME=&amp;#34;random&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set list of themes to pick from when loading at random&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Setting this variable when ZSH_THEME=random will cause zsh to load&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# a theme from this variable instead of looking in $ZSH/themes/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# If set to an empty array, this variable will have no effect.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ZSH_THEME_RANDOM_CANDIDATES=( &amp;#34;robbyrussell&amp;#34; &amp;#34;agnoster&amp;#34; )&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to use case-sensitive completion.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# CASE_SENSITIVE=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to use hyphen-insensitive completion.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Case-sensitive completion must be off. _ and - will be interchangeable.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# HYPHEN_INSENSITIVE=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment one of the following lines to change the auto-update behavior&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zstyle &amp;#39;:omz:update&amp;#39; mode disabled  # disable automatic updates&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zstyle &amp;#39;:omz:update&amp;#39; mode auto      # update automatically without asking&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zstyle &amp;#39;:omz:update&amp;#39; mode reminder  # just remind me to update when it&amp;#39;s time&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to change how often to auto-update (in days).&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zstyle &amp;#39;:omz:update&amp;#39; frequency 13&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line if pasting URLs and other text is messed up.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# DISABLE_MAGIC_FUNCTIONS=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to disable colors in ls.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# DISABLE_LS_COLORS=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to disable auto-setting terminal title.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# DISABLE_AUTO_TITLE=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to enable command auto-correction.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ENABLE_CORRECTION=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line to display red dots whilst waiting for completion.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# You can also set it to another string to have that shown instead of the default red dots.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# e.g. COMPLETION_WAITING_DOTS=&amp;#34;%F{yellow}waiting...%f&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Caution: this setting can cause issues with multiline prompts in zsh &amp;lt; 5.7.1 (see #5765)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# COMPLETION_WAITING_DOTS=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line if you want to disable marking untracked files&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# under VCS as dirty. This makes repository status check for large repositories&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# much, much faster.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# DISABLE_UNTRACKED_FILES_DIRTY=&amp;#34;true&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Uncomment the following line if you want to change the command execution time&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# stamp shown in the history command output.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# You can set one of the optional three formats:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# &amp;#34;mm/dd/yyyy&amp;#34;|&amp;#34;dd.mm.yyyy&amp;#34;|&amp;#34;yyyy-mm-dd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# or set a custom format using the strftime function format specifications,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# see &amp;#39;man strftime&amp;#39; for details.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;HIST_STAMPS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;yyyy-mm-dd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Would you like to use another custom folder than $ZSH/custom?&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ZSH_CUSTOM=/path/to/new-custom-folder&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Which plugins would you like to load?&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Standard plugins can be found in $ZSH/plugins/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Custom plugins may be added to $ZSH_CUSTOM/plugins/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Example format: plugins=(rails git textmate ruby lighthouse)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Add wisely, as too many plugins slow down shell startup.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zsh-syntax-highlighting:~/.oh-my-zsh/custom/plugins,https://github.com/zsh-users/zsh-syntax-highlighting&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# zsh-autosuggestions:~/.oh-my-zsh/custom/plugins,https://github.com/zsh-users/zsh-autosuggestions&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;plugins&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           git 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           colored-man-pages
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           &lt;span class=&#34;c1&#34;&gt;# macos&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           &lt;span class=&#34;c1&#34;&gt;# 以下需要自己安装&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#~/.oh-my-zsh/custom/plugins,https://github.com/zsh-users/zsh-syntax-highlighting&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           zsh-syntax-highlighting
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#~/.oh-my-zsh/custom/plugins,https://github.com/zsh-users/zsh-autosuggestions&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           zsh-autosuggestions
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#brew install autojump &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;           autojump
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$ZSH&lt;/span&gt;/oh-my-zsh.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# User configuration&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# export MANPATH=&amp;#34;/usr/local/man:$MANPATH&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# You may need to manually set your language environment&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# export LANG=en_US.UTF-8&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Preferred editor for local and remote sessions&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# if [[ -n $SSH_CONNECTION ]]; then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   export EDITOR=&amp;#39;vim&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#   export EDITOR=&amp;#39;mvim&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Compilation flags&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# export ARCHFLAGS=&amp;#34;-arch x86_64&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Set personal aliases, overriding those provided by oh-my-zsh libs,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# plugins, and themes. Aliases can be placed here, though oh-my-zsh&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# users are encouraged to define aliases within the ZSH_CUSTOM folder.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# For a full list of active aliases, run `alias`.&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Example aliases&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# alias zshconfig=&amp;#34;mate ~/.zshrc&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# alias ohmyzsh=&amp;#34;mate ~/.oh-my-zsh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 去重 zsh_history&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#setopt HIST_IGNORE_ALL_DUPS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#setopt HIST_IGNORE_SPACE&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# proxy&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#alias setproxy=&amp;#34;export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#alias unproxy=&amp;#34;unset http_proxy;unset https_proxy;unset ALL_PROXY&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# git-proxy&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#alias gitProxy=&amp;#34;git config --global http.proxy socks5://127.0.0.1:7890;git config --global https.proxy socks5://127.0.0.1:7890&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;#alias gitUnproxy=&amp;#34;git config --global --unset http.proxy;git config --global --unset https.proxy&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 上面alias舍弃，代理用自定义函数方式去做&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# maven&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;MAVEN_HOME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;~/Data/Software/apache-maven-3.6.3
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$MAVEN_HOME&lt;/span&gt;/bin:&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# java&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;JAVA_HOME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/Library/Java/JavaVirtualMachines/jdk1.8.0_321.jdk/Contents/Home
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$JAVA_HOME&lt;/span&gt;/bin:&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# brew 清华镜像源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HOMEBREW_BREW_GIT_REMOTE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HOMEBREW_CORE_GIT_REMOTE&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HOMEBREW_BOTTLE_DOMAIN&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# brew命令&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;brewtree&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;brew deps --tree --installed&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;brewlist&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;brew leaves | xargs brew deps  --installed --for-each | sed &amp;#39;s/^.*:/&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput setaf 4&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;tput sgr0&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/&amp;#39;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# java多版本&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;PATH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HOME&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;/.jenv/bin:&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$PATH&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;eval&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;jenv init -&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ls颜色和图标&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ls&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;lsd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# alias ll=&amp;#34;lsd -lh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# alias l=&amp;#34;lsd -alh&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# bat主题&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;BAT_THEME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;Dracula&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# python&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;python2&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7&amp;#39;&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;python3&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/usr/local/opt/python@3.10/bin/python3&amp;#39;&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;python&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;python3
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;pips&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/usr/bin/pip3&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;pip&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;/usr/local/opt/python@3.10/bin/pip3&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# top替代&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;btop&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;bpytop&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# tree颜色&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;trees&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;\tree -C&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 加载自定义函数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;au&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;autoload -U&amp;#34;&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;fpath&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt;~/Data/Config/my-functions
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;autoload -U setproxy unproxy getproxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 重载配置文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;alias&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;rr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;echo &amp;#39;reloading...&amp;#39;&amp;amp;&amp;amp;source ~/.zshrc&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;7、其他安装&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-18&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-18&#34;&gt;18&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-19&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-19&#34;&gt;19&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-20&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-20&#34;&gt;20&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-21&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-21&#34;&gt;21&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-22&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-22&#34;&gt;22&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-23&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-23&#34;&gt;23&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-24&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-24&#34;&gt;24&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-25&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-25&#34;&gt;25&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-26&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-26&#34;&gt;26&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-27&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-27&#34;&gt;27&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-28&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-28&#34;&gt;28&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-29&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-29&#34;&gt;29&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-30&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-30&#34;&gt;30&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-31&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-31&#34;&gt;31&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-32&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-32&#34;&gt;32&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-33&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-33&#34;&gt;33&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-34&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-34&#34;&gt;34&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-35&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-35&#34;&gt;35&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-36&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-36&#34;&gt;36&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-37&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-37&#34;&gt;37&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-38&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-38&#34;&gt;38&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-39&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-39&#34;&gt;39&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-40&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-40&#34;&gt;40&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-41&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-41&#34;&gt;41&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-42&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-42&#34;&gt;42&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-43&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-43&#34;&gt;43&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-44&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-44&#34;&gt;44&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-45&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-45&#34;&gt;45&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-46&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-46&#34;&gt;46&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-47&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-47&#34;&gt;47&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-48&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-48&#34;&gt;48&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-49&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-49&#34;&gt;49&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-50&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-50&#34;&gt;50&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-51&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-51&#34;&gt;51&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-52&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-52&#34;&gt;52&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-53&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-53&#34;&gt;53&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-54&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-54&#34;&gt;54&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://nodejs.org/en/&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install node
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://npmmirror.com 阿里镜像源 &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g cnpm --registry&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;https://registry.npmmirror.com
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/bchatard/alfred-jetbrains alfred流&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g @bchatard/alfred-jetbrains
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://picgo.github.io/PicGo-Core-Doc/zh/guide/ 图片上传&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install picgo -g
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://tldr.sh  替代man&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install -g tldr
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/wting/autojump  j跳转&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install autojump
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/sharkdp/bat  替代cat&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install bat
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/aristocratos/bpytop 替代top&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install bpytop
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/bcicen/ctop  容器资源利用情况&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install ctop
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/muesli/duf  磁盘空间&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install duf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/nicolargo/glances  服务 代替top&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install glances
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/hishamhm/htop 代替top&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install htop
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/jenv/jenv java版本管理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install jenv
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;jenv doctor
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;jenv versions
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;jenv &lt;span class=&#34;nb&#34;&gt;local&lt;/span&gt; 11.0.2
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/Peltoche/lsd 代替ls&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install lsd
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# lsof&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install lsof
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# nginx&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install nginx
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/tmux/tmux&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install tmux
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# tree&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install tree
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 文件搜索 https://github.com/ggreer/the_silver_searcher &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ag -g filename ./&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install the_silver_searcher
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/junegunn/fzf 文件查询&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 可以用来查找任何 列表 内容，文件、Git 分支、进程等 预览&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# fzf、ctrl+T：显示下拉列表； ctrl+R：显示历史命令； ctrl+g：回到首行；cd \ &amp;lt;TAB&amp;gt;：模糊匹配&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install fzf
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 文件名搜索 https://github.com/sharkdp/fd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install fd
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# markdown https://github.com/charmbracelet/glow&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install glow
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# https://github.com/skywind3000/z.lua&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# clone z.lua 到 ~/Data/Software/z.lua&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install trash &lt;span class=&#34;c1&#34;&gt;#rm 废纸篓&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;8、自定义函数  ～/Data/Config/my-functions目录下&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;getproxy&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;http=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$http_proxy&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;https=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$https_proxy&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;all=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$all_proxy&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;HTTP=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HTTP_PROXY&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;HTTPS=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$HTTPS_PROXY&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;ALL=&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$ALL_PROXY&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;gh=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;git config --get http.proxy&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;ghs=&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;git config --get https.proxy&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;;&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;setproxy&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;git&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ssh&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; 输入不符合要求
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;git&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;set git proxy ......&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    git config --global http.proxy socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    git config --global https.proxy socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ssh&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;set ssh proxy ......&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;https_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:7890 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;http_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:7890 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;all_proxy&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HTTPS_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HTTP_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;ALL_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;unproxy&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-1&#34;&gt; 1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-2&#34;&gt; 2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-3&#34;&gt; 3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-4&#34;&gt; 4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-5&#34;&gt; 5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-6&#34;&gt; 6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-7&#34;&gt; 7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-8&#34;&gt; 8&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-9&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-9&#34;&gt; 9&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-10&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-10&#34;&gt;10&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-11&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-11&#34;&gt;11&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-12&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-12&#34;&gt;12&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-13&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-13&#34;&gt;13&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-14&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-14&#34;&gt;14&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-15&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-15&#34;&gt;15&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-16&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-16&#34;&gt;16&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-17&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-17&#34;&gt;17&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;git&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ssh&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; !&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; 输入不符合要求
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;git&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;unset git proxy ......&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    git config --global --unset http.proxy socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    git config --global --unset https.proxy socks5://127.0.0.1:7890
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ssh&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;all&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;unset ssh proxy ......&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; https_proxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; http_proxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; all_proxy
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; HTTPS_PROXY
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; HTTP_PROXY
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nb&#34;&gt;unset&lt;/span&gt; ALL_PROXY
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;fi&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>ranger使用教程</title>
        <link>https://qh.1357810.xyz/articles/linux/ranger/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/ranger/</guid>
        <description>
&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ranger --copy-config&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;all
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; RANGER_LOAD_DEFAULT_RC FALSE&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;rc.conf&lt;/code&gt; is used for setting various options and binding keys to functions.  设置和快捷键绑定&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rifle.conf&lt;/code&gt; decides which program to use for opening a file.                   文件打开方式&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scope.sh&lt;/code&gt; is a shell script used to generate previews for various file types.  文件预览方式&lt;/li&gt;
&lt;li&gt;&lt;code&gt;commands.py&lt;/code&gt; contains various functions&amp;rsquo; implementation, written in Python, used to modify &lt;code&gt;ranger&#39;s&lt;/code&gt; behavior, and implement your own &lt;a class=&#34;link&#34; href=&#34;https://github.com/ranger/ranger/wiki/Custom-Commands&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Custom Commands


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


.  自定义命令&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;默认前置键&#34;&gt;
    &lt;a href=&#34;#%e9%bb%98%e8%ae%a4%e5%89%8d%e7%bd%ae%e9%94%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    默认前置键
&lt;/h1&gt;&lt;p&gt;&lt;code&gt;g&lt;/code&gt; 	for navigation and tabs  导航和标签
&lt;code&gt;r&lt;/code&gt; 	for :open_with command  打开文件
&lt;code&gt;y&lt;/code&gt; 	for yank(copy) 			 复制
&lt;code&gt;d&lt;/code&gt; 	for cut/delete 			  剪切删除
&lt;code&gt;p&lt;/code&gt; 	for paste					  粘贴
&lt;code&gt;o&lt;/code&gt; 	for sort						排序
&lt;code&gt;.&lt;/code&gt; 	for filter_stack
&lt;code&gt;z&lt;/code&gt; for changing settings			变化
&lt;code&gt;u&lt;/code&gt; for &amp;ldquo;undo&amp;rdquo;						 撤销
&lt;code&gt;M&lt;/code&gt; for linemode					
&lt;code&gt;+&lt;/code&gt;, &lt;code&gt;-&lt;/code&gt;, &lt;code&gt;=&lt;/code&gt; for setting access rights to files&lt;/p&gt;
&lt;h1 id=&#34;常用命令&#34;&gt;
    &lt;a href=&#34;#%e5%b8%b8%e7%94%a8%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    常用命令
&lt;/h1&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;command&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;desc&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+n&lt;/code&gt; 或者&lt;code&gt; g n&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;新建标签&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Tab&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;切换标签&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;g c&lt;/code&gt; 或者 &lt;code&gt;ctrl+w&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;关闭标签&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;zi&lt;/code&gt;  &lt;code&gt;zp&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开预览&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;alt+f&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开fzf&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;alt+/&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开fd查询文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;alt+p alt+n&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;fd查询上一个、下一个&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;alt+r&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在finder中打开&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;alt+h&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开历史&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;:z  filename&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开z.lua&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dm&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;删除文件到废纸篓&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;ss&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;console shell&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;注释了 危险&lt;code&gt;S&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;do shell&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;sh&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;cd ~&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;sc&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;cd ~/Data/Config&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;sd&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;cd ~/Data&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h1 id=&#34;文件和文件夹操作-复制粘贴&#34;&gt;
    &lt;a href=&#34;#%e6%96%87%e4%bb%b6%e5%92%8c%e6%96%87%e4%bb%b6%e5%a4%b9%e6%93%8d%e4%bd%9c-%e5%a4%8d%e5%88%b6%e7%b2%98%e8%b4%b4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    文件和文件夹操作 （复制粘贴）
&lt;/h1&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;command&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;desc&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;yy&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;复制&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;pp&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;粘贴文件 #再按一下就会在复制，不过在文件名下加一个下划线&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;po&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;覆盖性粘贴文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dd&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;剪切文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;yc&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;复制文本文件内容&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;cw&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;单个文件或者多文件重命名&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dU&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;查看当前文件目录里面每个文件夹有多大&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;w &lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;进入任务管理器，可以看到粘贴的进度条，还可以调整任务的优先级&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dd &lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在任务管理器下按下dd取消任务&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;zh&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;显示隐藏文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;:mkcd&lt;/code&gt; 或者 &lt;code&gt;sM&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;创建文件夹并进入&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;sT&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;创建文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dD&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;删除文件 修改为移入废纸篓&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;uD&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;还原最后删除的文件&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;dh&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;查看文件删除历史&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;f&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;修改为边输入边过滤&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;i&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;大窗口预览&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h1 id=&#34;tmux&#34;&gt;
    &lt;a href=&#34;#tmux&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    tmux
&lt;/h1&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;command&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;desc&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;ev&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在tmux中打开文件，水平分屏&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;es&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在tmux中打开文件，垂直分屏&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;ew&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;新窗口打开&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;efv&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在tmux中打开文件夹，水平分屏&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;efs&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在tmux中打开文件夹，垂直分屏&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;efw&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;新窗口打开&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</description>
        </item>
        <item>
        <title>Tmux使用教程</title>
        <link>https://qh.1357810.xyz/articles/linux/tmux/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/tmux/</guid>
        <description>&lt;h1 id=&#34;一-tmux-简介&#34;&gt;
    &lt;a href=&#34;#%e4%b8%80-tmux-%e7%ae%80%e4%bb%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    一. tmux 简介
&lt;/h1&gt;&lt;h2 id=&#34;指令全&#34;&gt;
    &lt;a href=&#34;#%e6%8c%87%e4%bb%a4%e5%85%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    指令全
&lt;/h2&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://gist.github.com/ryerh/14b7c24dfd623ef8edc7&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://gist.github.com/ryerh/14b7c24dfd623ef8edc7


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;p&gt;tmux是一款优秀的终端复用软件，它比Screen更加强大，至于如何强大，网上有大量的文章讨论了这点，本文不再重复。tmux之所以受人们喜爱，主要得益于以下三处功能：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;丝滑分屏（split），虽然iTem2也提供了横向和竖向分屏功能，但这种分屏功能非常拙劣，完全等同于屏幕新开一个窗口，新开的pane不会自动进入到当前目录，也没有记住当前登录状态。这意味着如果我ssh进入到远程服务器时，iTem2新开的pane中，我依然要重新走一遍ssh登录的老路（omg）。tmux就不会这样，tmux窗口中，新开的pane，默认进入到之前的路径，如果是ssh连接，登录状态也依旧保持着，如此一来，我就可以随意的增删pane，这种灵活性，好处不言而喻。&lt;/li&gt;
&lt;li&gt;保护现场（attach），即使命令行的工作只进行到一半，关闭终端后还可以重新进入到操作现场，继续工作。对于ssh远程连接而言，即使网络不稳定也没有关系，掉线后重新连接，可以直奔现场，之前运行中的任务，依旧在跑，就好像从来没有离开过一样；特别是在远程服务器上运行耗时的任务，tmux可以帮你一直保持住会话。如此一来，你就可以随时随地放心地进行移动办公，只要你附近的计算机装有tmux（没有你也可以花几分钟装一个），你就能继续刚才的工作。&lt;/li&gt;
&lt;li&gt;会话共享（适用于结对编程或远程教学），将 tmux 会话的地址分享给他人，这样他们就可以通过 SSH 接入该会话。如果你要给同事演示远程服务器的操作，他不必直勾勾地盯着你的屏幕，借助tmux，他完全可以进入到你的会话，然后静静地看着他桌面上你风骚的键盘走位，只要他愿意，甚至还可以录个屏。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;开始之前，我们先了解下基本概念：&lt;/p&gt;
&lt;p&gt;tmux采用C/S模型构建，输入tmux命令就相当于开启了一个服务器，此时默认将新建一个会话，然后会话中默认新建一个窗口，窗口中默认新建一个面板。会话、窗口、面板之间的联系如下：&lt;/p&gt;
&lt;p&gt;一个tmux &lt;code&gt;session&lt;/code&gt;（会话）可以包含多个&lt;code&gt;window&lt;/code&gt;（窗口），窗口默认充满会话界面，因此这些窗口中可以运行相关性不大的任务。&lt;/p&gt;
&lt;p&gt;一个&lt;code&gt;window&lt;/code&gt;又可以包含多个&lt;code&gt;pane&lt;/code&gt;（面板），窗口下的面板，都处于同一界面下，这些面板适合运行相关性高的任务，以便同时观察到它们的运行情况。&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;server&lt;/th&gt;
          &lt;th&gt;服务器。输入tmux命令时就开启了一个服务器。&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;session&lt;/td&gt;
          &lt;td&gt;会话。一个服务器可以包含多个会话。&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;window&lt;/td&gt;
          &lt;td&gt;窗口。一个会话可以包含多个窗口。&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;pane&lt;/td&gt;
          &lt;td&gt;面板。一个窗口可以包含多个面板。&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220216/20220216231354.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;img&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h1 id=&#34;二-tmux-安装和配置&#34;&gt;
    &lt;a href=&#34;#%e4%ba%8c-tmux-%e5%ae%89%e8%a3%85%e5%92%8c%e9%85%8d%e7%bd%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    二. tmux 安装和配置
&lt;/h1&gt;&lt;h2 id=&#34;1-新建会话&#34;&gt;
    &lt;a href=&#34;#1-%e6%96%b0%e5%bb%ba%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1 新建会话
&lt;/h2&gt;&lt;p&gt;新建一个tmux session非常简单，语法为&lt;code&gt;tmux new -s session-name&lt;/code&gt;，也可以简写为&lt;code&gt;tmux&lt;/code&gt;，为了方便管理，建议指定会话名称，如下。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux &lt;span class=&#34;c1&#34;&gt;# 新建一个无名称的会话&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux new -s demo &lt;span class=&#34;c1&#34;&gt;# 新建一个名称为demo的会话&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;2-断开当前会话&#34;&gt;
    &lt;a href=&#34;#2-%e6%96%ad%e5%bc%80%e5%bd%93%e5%89%8d%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2 断开当前会话
&lt;/h2&gt;&lt;p&gt;会话中操作了一段时间，我希望断开会话同时下次还能接着用，怎么做？此时可以使用detach命令&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux detach &lt;span class=&#34;c1&#34;&gt;# 断开当前会话，会话在后台运行&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;也许你觉得这个太麻烦了，是的，tmux的会话中，我们已经可以使用tmux快捷键了。使用快捷键组合&lt;code&gt;Ctrl+b&lt;/code&gt; + &lt;code&gt;d&lt;/code&gt;，三次按键就可以断开当前会话。&lt;/p&gt;
&lt;h2 id=&#34;3-进入之前的会话&#34;&gt;
    &lt;a href=&#34;#3-%e8%bf%9b%e5%85%a5%e4%b9%8b%e5%89%8d%e7%9a%84%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    3 进入之前的会话
&lt;/h2&gt;&lt;p&gt;断开会话后，想要接着上次留下的现场继续工作，就要使用到tmux的attach命令了，语法为&lt;code&gt;tmux attach-session -t session-name&lt;/code&gt;，可简写为&lt;code&gt;tmux a -t session-name&lt;/code&gt; 或 &lt;code&gt;tmux a&lt;/code&gt;。通常我们使用如下两种方式之一即可：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux a &lt;span class=&#34;c1&#34;&gt;# 默认进入第一个会话&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux a -t demo &lt;span class=&#34;c1&#34;&gt;# 进入到名称为demo的会话&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;4-关闭会话&#34;&gt;
    &lt;a href=&#34;#4-%e5%85%b3%e9%97%ad%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    4 关闭会话
&lt;/h2&gt;&lt;p&gt;会话的使命完成后，一定是要关闭的。我们可以使用tmux的kill命令，kill命令有&lt;code&gt;kill-pane&lt;/code&gt;、&lt;code&gt;kill-server&lt;/code&gt;、&lt;code&gt;kill-session&lt;/code&gt; 和 &lt;code&gt;kill-window&lt;/code&gt;共四种，其中&lt;code&gt;kill-session&lt;/code&gt;的语法为&lt;code&gt;tmux kill-session -t session-name&lt;/code&gt;。如下：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-3-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-3-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux kill-session -t demo &lt;span class=&#34;c1&#34;&gt;# 关闭demo会话&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux kill-server &lt;span class=&#34;c1&#34;&gt;# 关闭服务器，所有的会话都将关闭&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;在会话内退出并删除session&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-4-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-4-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-elixir&#34; data-lang=&#34;elixir&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nc&#34;&gt;Ctrl&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;ss&#34;&gt;:kill&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;session&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;5-查看会话&#34;&gt;
    &lt;a href=&#34;#5-%e6%9f%a5%e7%9c%8b%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    5 查看会话
&lt;/h2&gt;&lt;p&gt;管理会话的第一步就是要查看所有的会话，我们可以使用如下命令：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-5-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-5-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux list-session &lt;span class=&#34;c1&#34;&gt;# 查看所有会话&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux ls &lt;span class=&#34;c1&#34;&gt;# 查看所有会话，提倡使用简写形式&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;如果刚好处于会话中怎么办？别担心，我们可以使用对应的tmux快捷键&lt;code&gt;Ctrl+b&lt;/code&gt; + &lt;code&gt;s&lt;/code&gt;，此时tmux将打开一个会话列表，按上下键(⬆︎⬇︎)或者鼠标滚轮，可选中目标会话，按左右键（⬅︎➜）可收起或展开会话的窗口，选中目标会话或窗口后，按回车键即可完成切换。&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220216/20220216234640.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;img&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;h2 id=&#34;6-tmux快捷命令&#34;&gt;
    &lt;a href=&#34;#6-tmux%e5%bf%ab%e6%8d%b7%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    6 tmux快捷命令
&lt;/h2&gt;&lt;p&gt;关于快捷指令，首先要认识到的是：tmux的所有指令，都包含同一个前缀，默认为&lt;code&gt;Ctrl+b&lt;/code&gt;，输入完前缀过后，控制台激活，命令按键才能生效。前面tmux会话相关的操作中，我们共用到了两个快捷键&lt;code&gt;Ctrl+b&lt;/code&gt; + &lt;code&gt;d&lt;/code&gt;、&lt;code&gt;Ctrl+b&lt;/code&gt; + &lt;code&gt;s&lt;/code&gt;，但这仅仅是冰山一角，欲窥tmux庞大的快捷键体系，请看下表。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;Ctrl+b&lt;/code&gt; + &lt;code&gt;s&lt;/code&gt; 进入信息列表，然后选中某个session或者window或者pane，然后按 &lt;code&gt; x&lt;/code&gt;  ，都可以删除&lt;/p&gt;
&lt;h3 id=&#34;表一系统指令&#34;&gt;
    &lt;a href=&#34;#%e8%a1%a8%e4%b8%80%e7%b3%bb%e7%bb%9f%e6%8c%87%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    表一：系统指令。
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;前缀&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;指令&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;描述&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;?&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;显示快捷键帮助文档&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;d&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;断开当前会话&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;D&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;选择要断开的会话&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+z&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;挂起当前会话&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;r&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;强制重载当前会话&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;s&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;显示会话列表用于选择并切换&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;:&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;进入命令行模式，此时可直接输入&lt;code&gt;ls&lt;/code&gt;等命令&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;[&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;进入复制模式，按&lt;code&gt;q&lt;/code&gt;退出&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;]&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;粘贴复制模式中复制的文本&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;~&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;列出提示信息缓存&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;表二窗口window指令&#34;&gt;
    &lt;a href=&#34;#%e8%a1%a8%e4%ba%8c%e7%aa%97%e5%8f%a3window%e6%8c%87%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    表二：窗口（window）指令。
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;前缀&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;指令&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;描述&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;c&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;新建窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;&amp;amp;&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;关闭当前窗口（关闭前需输入&lt;code&gt;y&lt;/code&gt; or &lt;code&gt;n&lt;/code&gt;确认）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;0~9&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;切换到指定窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;p&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;切换到上一窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;n&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;切换到下一窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;w&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;打开窗口列表，用于且切换窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;,&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;重命名当前窗口&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;.&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;修改当前窗口编号（适用于窗口重新排序）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;f&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;快速定位到窗口（输入关键字匹配窗口名称）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;z&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;最大化窗口&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;表三面板pane指令&#34;&gt;
    &lt;a href=&#34;#%e8%a1%a8%e4%b8%89%e9%9d%a2%e6%9d%bfpane%e6%8c%87%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    表三：面板（pane）指令。
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;前缀&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;指令&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;描述&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;&amp;quot;&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;当前面板上下一分为二，下侧新建面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;%&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;当前面板左右一分为二，右侧新建面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;x&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;关闭当前面板（关闭前需输入&lt;code&gt;y&lt;/code&gt; or &lt;code&gt;n&lt;/code&gt;确认）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;z&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;最大化当前面板，再重复一次按键后恢复正常（v1.8版本新增）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;!&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;将当前面板移动到新的窗口打开（原窗口中存在两个及以上面板有效）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;;&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;切换到最后一次使用的面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;q&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;显示面板编号，在编号消失前输入对应的数字可切换到相应的面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;{&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;向前置换当前面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;}&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;向后置换当前面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+o&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;顺时针旋转当前窗口中的所有面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;方向键&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;移动光标切换面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;o&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;选择下一面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;空格键&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;在自带的面板布局中循环切换&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Alt+方向键&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;以5个单元格为单位调整当前面板边缘&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+方向键&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;以1个单元格为单位调整当前面板边缘（Mac下被系统快捷键覆盖）&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;t&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;显示时钟&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;x&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;关闭当前面板&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;Ctrl+b&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;code&gt;E&lt;/code&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;等分面板&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;tmux的丝滑分屏功能正是得益于以上系统、窗口、面板的快捷指令，只要你愿意，你就可以解除任意的快捷指令，然后绑上你喜欢的指令，当然这就涉及到它的可配置性了&lt;/p&gt;
&lt;h2 id=&#34;7-tmux滚屏&#34;&gt;
    &lt;a href=&#34;#7-tmux%e6%bb%9a%e5%b1%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    7 tmux滚屏
&lt;/h2&gt;&lt;p&gt;使用快捷键进入 &lt;code&gt;copy-mode&lt;/code&gt; 模式，就可以利用方向键上下移动光标查看了，但是如果历史信息太多，一行一行未免太不爽了，该如何操作呢？&lt;/p&gt;
&lt;p&gt;1.先打开配置文件：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-6-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-6-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;vim&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;/.tmux.conf&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;2.将下面设置输入：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-7-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-7-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;setw&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;g&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;mode&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;keys&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;vi&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;3.重新载入配置文件：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-8-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-8-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-javascript&#34; data-lang=&#34;javascript&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nx&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;nx&#34;&gt;source&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nx&#34;&gt;file&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;~&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;/.tmux.conf&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;4.使用快捷键进入 &lt;code&gt;copy-mode&lt;/code&gt; 模式，然后就可以像 &lt;code&gt;vi&lt;/code&gt; 中一样操作了。&lt;/p&gt;
&lt;p&gt;比如：&lt;code&gt;Ctrl-u&lt;/code&gt; 向上滚半屏， &lt;code&gt;Ctrl-d&lt;/code&gt; 向下滚半屏。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;根据某关键字搜索&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;使用快捷键进入 &lt;code&gt;copy-mode&lt;/code&gt; 模式，然后按 &lt;code&gt;/&lt;/code&gt; ，就可以输入关键字了，回车查找。&lt;/p&gt;
&lt;h1 id=&#34;四-恢复用户空间&#34;&gt;
    &lt;a href=&#34;#%e5%9b%9b-%e6%81%a2%e5%a4%8d%e7%94%a8%e6%88%b7%e7%a9%ba%e9%97%b4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    四. 恢复用户空间
&lt;/h1&gt;&lt;h2 id=&#34;1-复制模式&#34;&gt;
    &lt;a href=&#34;#1-%e5%a4%8d%e5%88%b6%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1 复制模式
&lt;/h2&gt;&lt;p&gt;tmux中操作文本，自然离不开复制模式，通常使用复制模式的步骤如下：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;输入 ``+[` 进入复制模式&lt;/li&gt;
&lt;li&gt;按下 &lt;code&gt;空格键&lt;/code&gt; 开始复制，移动光标选择复制区域&lt;/li&gt;
&lt;li&gt;按下 &lt;code&gt;回车键&lt;/code&gt; 复制选中文本并退出复制模式&lt;/li&gt;
&lt;li&gt;按下 ``+]` 粘贴文本&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;查看复制模式默认的快捷键风格：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-9-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-9-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux show-window-options -g mode-keys # mode-keys emacs&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;默认情况下，快捷键为&lt;code&gt;emacs&lt;/code&gt;风格。&lt;/p&gt;
&lt;p&gt;为了让复制模式更加方便，我们可以将快捷键设置为熟悉的&lt;code&gt;vi&lt;/code&gt;风格，如下：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-10-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-10-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;setw -g mode-keys vi # 开启vi风格后，支持vi的C-d、C-u、hjkl等快捷键&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;除了快捷键外，复制模式的启用、选择、复制、粘贴等按键也可以向&lt;code&gt;vi&lt;/code&gt;风格靠拢。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-11-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-11-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind Escape copy-mode # 绑定esc键为进入复制模式
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind -t vi-copy v begin-selection # 绑定v键为开始选择文本
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind -t vi-copy y copy-selection # 绑定y键为复制选中文本
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind p pasteb # 绑定p键为粘贴文本（p键默认用于进入上一个窗口，不建议覆盖）&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;以上，绑定 &lt;code&gt;v&lt;/code&gt;、&lt;code&gt;y&lt;/code&gt;两键的设置只在tmux v2.4版本以下才有效，对于v2.4及以上的版本，绑定快捷键需要使用 &lt;code&gt;-T&lt;/code&gt; 选项，发送指令需要使用 &lt;code&gt;-X&lt;/code&gt; 选项，请参考如下设置：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-12-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-12-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind -T copy-mode-vi v send-keys -X begin-selection
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind -T copy-mode-vi y send-keys -X copy-selection-and-cancel&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;2-buffer缓存&#34;&gt;
    &lt;a href=&#34;#2-buffer%e7%bc%93%e5%ad%98&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2 buffer缓存
&lt;/h2&gt;&lt;p&gt;tmux复制操作的内容默认会存进&lt;code&gt;buffer&lt;/code&gt;里，&lt;code&gt;buffer&lt;/code&gt;是一个粘贴缓存区，新的缓存总是位于栈顶，它的操作命令如下：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-5&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-5&#34;&gt;5&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-6&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-6&#34;&gt;6&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-7&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-7&#34;&gt;7&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-13-8&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-13-8&#34;&gt;8&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;list&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffers&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 展示所有的 buffers&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;show&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 显示指定的 buffer 内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;choose&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 进入 buffer 选择页面(支持jk上下移动选择，回车选中并粘贴 buffer 内容到面板上)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;set&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 设置buffer内容&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;load&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;path&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 从文件中加载文本到buffer缓存&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;save&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;path&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 保存tmux的buffer缓存到本地&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;paste&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 粘贴buffer内容到会话中&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;delete&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;buffer&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# 删除指定名称的buffer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;以上buffer操作在不指定buffer-name时，默认处理是栈顶的buffer缓存。&lt;/p&gt;
&lt;p&gt;在tmux会话的命令行输入时，可以省略上述tmux前缀，其中list-buffers的操作如下所示：&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220217/20220217022837.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;img&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
·&lt;/p&gt;
&lt;p&gt;choose-buffer的操作如下所示：&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;http://louiszhai.github.io/docImages/tmux05.png&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220217/20220217022747.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;choose-buffer&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;



&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;p&gt;默认情况下，buffers内容是独立于系统粘贴板的，它存在于tmux进程中，且可以在会话间共享。&lt;/p&gt;
&lt;h2 id=&#34;3-使用系统粘贴板&#34;&gt;
    &lt;a href=&#34;#3-%e4%bd%bf%e7%94%a8%e7%b3%bb%e7%bb%9f%e7%b2%98%e8%b4%b4%e6%9d%bf&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    3 使用系统粘贴板
&lt;/h2&gt;&lt;p&gt;存在于tmux进程中的buffer缓存，虽然可以在会话间共享，但不能直接与系统粘贴板共享，不免有些遗憾。幸运的是，现在我们有成熟的方案来实现这个功能。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;在Linux上使用粘贴板&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;通常，Linux中可以使用&lt;code&gt;xclip&lt;/code&gt;工具来接入系统粘贴板。&lt;/p&gt;
&lt;p&gt;首先，需要安装&lt;code&gt;xclip&lt;/code&gt;。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-14-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-14-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt-get install xclip&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;然后，&lt;code&gt;.tmux.conf&lt;/code&gt;的配置如下。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-15-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-15-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# buffer缓存复制到Linux系统粘贴板
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind C-c run &amp;#34; tmux save-buffer - | xclip -i -sel clipboard&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Linux系统粘贴板内容复制到会话
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind C-v run &amp;#34; tmux set-buffer \&amp;#34;$(xclip -o -sel clipboard)\&amp;#34;; tmux paste-buffer&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;按下&lt;code&gt;prefix&lt;/code&gt; + &lt;code&gt;Ctrl&lt;/code&gt; + &lt;code&gt;c&lt;/code&gt; 键，buffer缓存的内容将通过&lt;code&gt;xlip&lt;/code&gt;程序复制到粘贴板，按下&lt;code&gt;prefix&lt;/code&gt; + &lt;code&gt;Ctrl&lt;/code&gt; + &lt;code&gt;v&lt;/code&gt;键，tmux将通过&lt;code&gt;xclip&lt;/code&gt;访问粘贴板，然后由set-buffer命令设置给buffer缓存，最后由paste-buffer粘贴到tmux会话中。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;在Mac上使用粘贴板&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;我们都知道，Mac自带 &lt;code&gt;pbcopy&lt;/code&gt; 和 &lt;code&gt;pbpaste&lt;/code&gt;命令，分别用于复制和粘贴，但在tmux命令中它们却不能正常运行。这里我将详细介绍下原因：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Mac的粘贴板服务是在引导命名空间注册的。命名空间存在层次之分，更高级别的命名空间拥有访问低级别命名空间（如root引导命名空间）的权限，反之却不行。流程创建的属于Mac登录会话的一部分，它会被自动包含在用户级的引导命名空间中，因此只有用户级的命名空间才能访问粘贴板服务。tmux使用守护进程(3)库函数创建其服务器进程，在Mac OS X 10.5中，苹果改变了守护进程(3)的策略，将生成的过程从最初的引导命名空间移到了根引导命名空间。而根引导命名空间访问权限较低，这意味着tmux服务器，和它的子进程，一同失去了原引导命名空间的访问权限（即无权限访问粘贴板服务）。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;如此，我们可以使用一个小小的包装程序来重新连接到合适的命名空间，然后执行访问用户级命名空间的粘贴板服务，这个包装程序就是&lt;code&gt;reattach-to-user-namespace&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;那么，Mac下&lt;code&gt;.tmux.conf&lt;/code&gt;的配置如下：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-16-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-16-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# buffer缓存复制到Mac系统粘贴板&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;bind&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;C&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;c&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;run&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;tmux save-buffer - | reattach-to-user-namespace pbcopy&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Mac系统粘贴板内容复制到会话&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;bind&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;C&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;v&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;run&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;reattach-to-user-namespace pbpaste | tmux load-buffer - \; paste-buffer -d&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;code&gt;reattach-to-user-namespace&lt;/code&gt; 作为包装程序来访问Mac粘贴板，按下&lt;code&gt;prefix&lt;/code&gt; + &lt;code&gt;Ctrl&lt;/code&gt; + &lt;code&gt;c&lt;/code&gt; 键，buffer缓存的内容将复制到粘贴板，按下&lt;code&gt;prefix&lt;/code&gt; + &lt;code&gt;Ctrl&lt;/code&gt; + &lt;code&gt;v&lt;/code&gt;键，粘贴板的内容将通过 load-buffer 加载，然后由 paste-buffer 粘贴到tmux会话中。&lt;/p&gt;
&lt;p&gt;为了在复制模式中使用Mac系统的粘贴板，可做如下配置：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-17-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-17-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 绑定y键为复制选中文本到Mac系统粘贴板
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind-key -T copy-mode-vi &amp;#39;y&amp;#39; send-keys -X copy-pipe-and-cancel &amp;#39;reattach-to-user-namespace pbcopy&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 鼠标拖动选中文本，并复制到Mac系统粘贴板
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel &amp;#34;pbcopy&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;完成以上配置后记得重启tmux服务器。至此，复制模式中，按&lt;code&gt;y&lt;/code&gt;键将保存选中的文本到Mac系统粘贴板，随后按&lt;code&gt;Command&lt;/code&gt; + &lt;code&gt;v&lt;/code&gt;键便可粘贴。&lt;/p&gt;
&lt;h1 id=&#34;六保存tmux会话&#34;&gt;
    &lt;a href=&#34;#%e5%85%ad%e4%bf%9d%e5%ad%98tmux%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    六.保存Tmux会话
&lt;/h1&gt;&lt;h2 id=&#34;1-结对编程&#34;&gt;
    &lt;a href=&#34;#1-%e7%bb%93%e5%af%b9%e7%bc%96%e7%a8%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    1 结对编程
&lt;/h2&gt;&lt;p&gt;tmux多会话连接实时同步的功能，使得结对编程成为了可能，这也是开发者最喜欢的功能之一。现在就差一步了，就是借助tmate把tmux会话分享出去。&lt;/p&gt;
&lt;p&gt;tmate是tmux的管理工具，它可以轻松的创建tmux会话，并且自动生成ssh链接。&lt;/p&gt;
&lt;p&gt;安装tmate&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-18-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-18-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;brew install tmate&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;使用tmate新建一个tmux会话&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-19-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-19-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmate&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;此时屏幕下方会显示ssh url，如下所示：&lt;/p&gt;
&lt;p&gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220217/20220217023108.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;img&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;
&lt;/p&gt;
&lt;p&gt;查看tmate生成的ssh链接&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-20-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-20-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmate show-messages&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;生成的ssh url如下所示，其中一个为只读，另一个可编辑。&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;http://louiszhai.github.io/docImages/tmux08.png&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;


    &lt;img src=&#34;https://logan.1357810.xyz/img/20220217/20220217022329.png&#34;
         width=&#34;200&#34;
            height=&#34;200&#34;
            
         loading=&#34;lazy&#34;
         decoding=&#34;async&#34;
            
              alt=&#34;ssh url&#34;
            
            
              class=&#34;gallery-image link-image&#34;
              data-flex-grow=&#34;20&#34;
              data-flex-basis=&#34;20px&#34;
            
    &gt;



&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;h2 id=&#34;2-共享账号组会话&#34;&gt;
    &lt;a href=&#34;#2-%e5%85%b1%e4%ba%ab%e8%b4%a6%e5%8f%b7%e7%bb%84%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    2 共享账号&amp;amp;组会话
&lt;/h2&gt;&lt;p&gt;使用tmate远程共享tmux会话，受制于多方的网络质量，必然会存在些许延迟。如果共享会话的多方拥有同一个远程服务器的账号，那么我们可以使用&lt;code&gt;组会话&lt;/code&gt;解决这个问题。&lt;/p&gt;
&lt;p&gt;先在远程服务器上新建一个公共会话，命名为&lt;code&gt;groupSession&lt;/code&gt;。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-21-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-21-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux new -s groupSession&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;其他用户不去直接连接这个会话，而是通过创建一个新的会话来加入上面的公共会话&lt;code&gt;groupSession&lt;/code&gt;。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-22-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-22-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux new -t groupSession -s otherSession&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;此时两个用户都可以在同一个会话里操作，就会好像第二个用户连接到了&lt;code&gt;groupSession&lt;/code&gt;的会话一样。此时两个用户都可以创建新建的窗口，新窗口的内容依然会实时同步，但是其中一个用户切换到其它窗口，对另外一个用户没有任何影响，因此在这个共享的组会话中，用户各自的操作可以通过新建窗口来执行。即使第二个用户关闭&lt;code&gt;otherSession&lt;/code&gt;会话，共享会话&lt;code&gt;groupSession&lt;/code&gt;依然存在。&lt;/p&gt;
&lt;p&gt;组会话在共享的同时，又保留了相对的独立，非常适合结对编程场景，它是结对编程最简单的方式，如果账号不能共享，我们就要使用下面的方案了。&lt;/p&gt;
&lt;h2 id=&#34;3-独立账号socket共享会话&#34;&gt;
    &lt;a href=&#34;#3-%e7%8b%ac%e7%ab%8b%e8%b4%a6%e5%8f%b7socket%e5%85%b1%e4%ba%ab%e4%bc%9a%e8%af%9d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    3 独立账号&amp;amp;Socket共享会话
&lt;/h2&gt;&lt;p&gt;开始之前我们需要确保用户对远程服务器上同一个目录拥有相同的读写权限，假设这个目录为&lt;code&gt;/var/tmux/&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;使用new-session（简写new）创建会话时，使用的是默认的socket位置，默认socket无法操作，所以我们需要创建一个指定socket文件的会话。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-23-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-23-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;S&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;var&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sharefile&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;另一个用户进入时，需要指定socket文件加入会话。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-24-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-24-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;S&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;k&#34;&gt;var&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;/&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sharefile&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;attach&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;这样，两个不同的用户就可以共享同一个会话了。&lt;/p&gt;
&lt;p&gt;通常情况下，不同的用户使用不同的配置文件来创建会话，但是，使用指定socket文件创建的tmux会话，会话加载的是第一个创建会话的用户的&lt;code&gt;~/.tmux.conf&lt;/code&gt;配置文件，随后加入会话的其他用户，依然使用同一份配置文件。&lt;/p&gt;
&lt;h1 id=&#34;八tmux优化&#34;&gt;
    &lt;a href=&#34;#%e5%85%abtmux%e4%bc%98%e5%8c%96&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    八.Tmux优化
&lt;/h1&gt;&lt;p&gt;tmux作为终端复用软件，支持纯命令行操作也是其一大亮点。你既可以启用可视化界面创建会话，也可以运行脚本生成会话，对于tmux依赖者而言，编写几个tmux脚本批量维护会话列表，快速重启、切换、甚至分享部分会话都是非常方便的。可能会有人说为什么不用Tmux Resurrect呢？是的，Tmux Resurrect很好，一键恢复也很诱人，但是对于一个维护大量tmux会话的用户而言，一键恢复可能不见得好，分批次恢复可能是他（她）更想要的，脚本化的tmux就很好地满足了这点。&lt;/p&gt;
&lt;p&gt;脚本中创建tmux会话时，由于不需要开启可视化界面，需要输入&lt;code&gt;-d&lt;/code&gt;参数指定会话后台运行，如下。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-25-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-25-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux new -s init -d # 后台创建一个名称为init的会话&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新建的会话，建议&lt;strong&gt;重命令会话的窗口名称&lt;/strong&gt;，以便后续维护。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-26-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-26-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 重命名init会话的第一个窗口名称为service
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux rename-window -t &amp;#34;init:1&amp;#34; service&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;现在，可以在刚才的窗口中&lt;strong&gt;输入指令&lt;/strong&gt;了。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-27-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-27-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 切换到指定目录并运行python服务
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux send -t &amp;#34;init:service&amp;#34; &amp;#34;cd ~/workspace/language/python/;python2.7 server.py&amp;#34; Enter&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;一个面板占用一个窗口可能太浪费了，我们来&lt;strong&gt;分个屏&lt;/strong&gt;吧。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-28-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-28-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 默认上下分屏
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux split-window -t &amp;#34;init:service&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 切换到指定目录并运行node服务
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux send -t &amp;#34;init:service&amp;#34; &amp;#39;cd ~/data/louiszhai/node-webserver/;npm start&amp;#39; Enter&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;现在一个窗口拥有上下两个面板，是时候&lt;strong&gt;创建一个新的窗口&lt;/strong&gt;来运行更多的程序了。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-29-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-29-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 新建一个名称为tool的窗口&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;neww&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;n&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;tool&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;init&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# neww等同于new window&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 运行weinre调试工具&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;send&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;init:tool&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;weinre --httpPort 8881 --boundHost -all-&amp;#34;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Enter&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;另外新建窗口运行程序，有更方便的方式，比如使用 &lt;code&gt;processes&lt;/code&gt; 选项。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-30-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-30-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux neww-n processes ls # 新建窗口并执行命令，命令执行结束后窗口将关闭
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tmux neww-n processes top # 由于top命令持续在前台运行，因此窗口将保留，直到top命令退出&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;新的窗口，我们尝试下水平分屏。&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-2&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-2&#34;&gt;2&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-3&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-3&#34;&gt;3&lt;/a&gt;
&lt;/span&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-31-4&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-31-4&#34;&gt;4&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-gdscript3&#34; data-lang=&#34;gdscript3&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 水平分屏&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;split&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;window&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;h&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;init:tool&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 切换到指定目录并启用aria2 web管理后台&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;tmux&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;send&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;t&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;init:tool&amp;#34;&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;cd ~/data/tools/AriaNg/dist/;python -m SimpleHTTPServer 10108&amp;#34;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Enter&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;类似的脚本，我们可以编写一打，这样快速重启、切换、甚至分享会话都将更加便捷。&lt;/p&gt;
&lt;h1 id=&#34;十-开机自动启用web服务器&#34;&gt;
    &lt;a href=&#34;#%e5%8d%81-%e5%bc%80%e6%9c%ba%e8%87%aa%e5%8a%a8%e5%90%af%e7%94%a8web%e6%9c%8d%e5%8a%a1%e5%99%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    十. 开机自动启用Web服务器
&lt;/h1&gt;</description>
        </item>
        <item>
        <title>vim相关操作</title>
        <link>https://qh.1357810.xyz/articles/linux/vimother/</link>
        <pubDate>Wed, 03 May 2023 03:49:51 +0800</pubDate>
        
        <guid>https://qh.1357810.xyz/articles/linux/vimother/</guid>
        <description>&lt;h1 id=&#34;1-关于vim&#34;&gt;
    &lt;a href=&#34;#1-%e5%85%b3%e4%ba%8evim&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id59&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;1. 关于Vim


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;p&gt;vim是我最喜欢的编辑器，也是&lt;a class=&#34;link&#34; href=&#34;http://lib.csdn.net/base/linux&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Linux


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


下第二强大的编辑器。 虽然emacs是公认的世界第一，我认为使用emacs并没有使用vi进行编辑来得高效。 如果是初学vi，运行一下vimtutor是个聪明的决定。 （如果你的系统环境不是中文，而你想使用中文的vimtutor，就运行vimtutor zh）&lt;/p&gt;
&lt;h2 id=&#34;11-vim的几种模式&#34;&gt;
    &lt;a href=&#34;#11-vim%e7%9a%84%e5%87%a0%e7%a7%8d%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id60&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;1.1 Vim的几种模式


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;正常模式：可以使用快捷键命令，或按:输入命令行。&lt;/li&gt;
&lt;li&gt;插入模式：可以输入文本，在正常模式下，按i、a、o等都可以进入插入模式。&lt;/li&gt;
&lt;li&gt;可视模式：正常模式下按v可以进入可视模式， 在可视模式下，移动光标可以选择文本。按V进入可视行模式， 总是整行整行的选中。ctrl+v进入可视块模式。&lt;/li&gt;
&lt;li&gt;替换模式：正常模式下，按R进入。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;2-启动vim&#34;&gt;
    &lt;a href=&#34;#2-%e5%90%af%e5%8a%a8vim&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id61&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;2. 启动Vim


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;vim -c cmd file: 在打开文件前，先执行指定的命令；&lt;/li&gt;
&lt;li&gt;vim -r file: 恢复上次异常退出的文件；&lt;/li&gt;
&lt;li&gt;vim -R file: 以只读的方式打开文件，但可以强制保存；&lt;/li&gt;
&lt;li&gt;vim -M file: 以只读的方式打开文件，不可以强制保存；&lt;/li&gt;
&lt;li&gt;vim -y num file: 将编辑窗口的大小设为num行；&lt;/li&gt;
&lt;li&gt;vim + file: 从文件的末尾开始；&lt;/li&gt;
&lt;li&gt;vim +num file: 从第num行开始；&lt;/li&gt;
&lt;li&gt;vim +/string file: 打开file，并将光标停留在第一个找到的string上。&lt;/li&gt;
&lt;li&gt;vim –remote file: 用已有的vim进程打开指定的文件。 如果你不想启用多个vim会话，这个很有用。但要注意， 如果你用vim，会寻找名叫VIM的服务器；如果你已经有一个gvim在运行了， 你可以用gvim –remote file在已有的gvim中打开文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;3-文档操作&#34;&gt;
    &lt;a href=&#34;#3-%e6%96%87%e6%a1%a3%e6%93%8d%e4%bd%9c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id62&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;3. 文档操作


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;:e file –关闭当前编辑的文件，并开启新的文件。 如果对当前文件的修改未保存，vi会警告。&lt;/li&gt;
&lt;li&gt;:e! file –放弃对当前文件的修改，编辑新的文件。&lt;/li&gt;
&lt;li&gt;:e+file – 开始新的文件，并从文件尾开始编辑。&lt;/li&gt;
&lt;li&gt;:e+n file – 开始新的文件，并从第n行开始编辑。&lt;/li&gt;
&lt;li&gt;:enew –编译一个未命名的新文档。(CTRL-W n)&lt;/li&gt;
&lt;li&gt;:e – 重新加载当前文档。&lt;/li&gt;
&lt;li&gt;:e! – 重新加载当前文档，并丢弃已做的改动。&lt;/li&gt;
&lt;li&gt;:e#或ctrl+^ – 回到刚才编辑的文件，很实用。&lt;/li&gt;
&lt;li&gt;:f或ctrl+g – 显示文档名，是否修改，和光标位置。&lt;/li&gt;
&lt;li&gt;:f filename – 改变编辑的文件名，这时再保存相当于另存为。&lt;/li&gt;
&lt;li&gt;gf – 打开以光标所在字符串为文件名的文件。&lt;/li&gt;
&lt;li&gt;:w – 保存修改。&lt;/li&gt;
&lt;li&gt;:n1,n2w filename – 选择性保存从某n1行到另n2行的内容。&lt;/li&gt;
&lt;li&gt;:wq – 保存并退出。&lt;/li&gt;
&lt;li&gt;ZZ – 保存并退出。&lt;/li&gt;
&lt;li&gt;:x – 保存并退出。&lt;/li&gt;
&lt;li&gt;:q[uit] ——退出当前窗口。(CTRL-W q或CTRL-W CTRL-Q)&lt;/li&gt;
&lt;li&gt;:saveas newfilename – 另存为&lt;/li&gt;
&lt;li&gt;:browse e – 会打开一个文件浏览器让你选择要编辑的文件。 如果是终端中，则会打开netrw的文件浏览窗口； 如果是gvim，则会打开一个图形界面的浏览窗口。 实际上:browse后可以跟任何编辑文档的命令，如sp等。 用browse打开的起始目录可以由browsedir来设置：
&lt;ul&gt;
&lt;li&gt;:set browsedir=last – 用上次访问过的目录（默认）；&lt;/li&gt;
&lt;li&gt;:set browsedir=buffer – 用当前文件所在目录；&lt;/li&gt;
&lt;li&gt;:set browsedir=current – 用当前工作目录；&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;:Sex – 水平分割一个窗口，浏览文件系统；&lt;/li&gt;
&lt;li&gt;:Vex – 垂直分割一个窗口，浏览文件系统；&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;4-光标的移动&#34;&gt;
    &lt;a href=&#34;#4-%e5%85%89%e6%a0%87%e7%9a%84%e7%a7%bb%e5%8a%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id63&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;4. 光标的移动


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;41-基本移动&#34;&gt;
    &lt;a href=&#34;#41-%e5%9f%ba%e6%9c%ac%e7%a7%bb%e5%8a%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id64&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;4.1 基本移动


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;以下移动都是在normal模式下。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;h或退格: 左移一个字符；&lt;/li&gt;
&lt;li&gt;l或空格: 右移一个字符；&lt;/li&gt;
&lt;li&gt;j: 下移一行；&lt;/li&gt;
&lt;li&gt;k: 上移一行；&lt;/li&gt;
&lt;li&gt;gj: 移动到一段内的下一行；&lt;/li&gt;
&lt;li&gt;gk: 移动到一段内的上一行；&lt;/li&gt;
&lt;li&gt;+或Enter: 把光标移至下一行第一个非空白字符。&lt;/li&gt;
&lt;li&gt;-: 把光标移至上一行第一个非空白字符。&lt;/li&gt;
&lt;li&gt;w: 前移一个单词，光标停在下一个单词开头；&lt;/li&gt;
&lt;li&gt;W: 移动下一个单词开头，但忽略一些标点；&lt;/li&gt;
&lt;li&gt;e: 前移一个单词，光标停在下一个单词末尾；&lt;/li&gt;
&lt;li&gt;E: 移动到下一个单词末尾，如果词尾有标点，则移动到标点；&lt;/li&gt;
&lt;li&gt;b: 后移一个单词，光标停在上一个单词开头；&lt;/li&gt;
&lt;li&gt;B: 移动到上一个单词开头，忽略一些标点；&lt;/li&gt;
&lt;li&gt;ge: 后移一个单词，光标停在上一个单词末尾；&lt;/li&gt;
&lt;li&gt;gE: 同 ge ，不过‘单词’包含单词相邻的标点。&lt;/li&gt;
&lt;li&gt;(: 前移1句。&lt;/li&gt;
&lt;li&gt;): 后移1句。&lt;/li&gt;
&lt;li&gt;{: 前移1段。&lt;/li&gt;
&lt;li&gt;}: 后移1段。&lt;/li&gt;
&lt;li&gt;fc: 把光标移到同一行的下一个c字符处&lt;/li&gt;
&lt;li&gt;Fc: 把光标移到同一行的上一个c字符处&lt;/li&gt;
&lt;li&gt;tc: 把光标移到同一行的下一个c字符前&lt;/li&gt;
&lt;li&gt;Tc: 把光标移到同一行的上一个c字符后&lt;/li&gt;
&lt;li&gt;;: 配合f &amp;amp; t使用，重复一次&lt;/li&gt;
&lt;li&gt;,: 配合f &amp;amp; t使用，反向重复一次&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;上面的操作都可以配合n使用，比如在正常模式(下面会讲到)下输入3h， 则光标向左移动3个字符。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;0: 移动到行首。&lt;/li&gt;
&lt;li&gt;g0: 移到光标所在屏幕行行首。&lt;/li&gt;
&lt;li&gt;^: 移动到本行第一个非空白字符。&lt;/li&gt;
&lt;li&gt;g^: 同 ^ ，但是移动到当前屏幕行第一个非空字符处。&lt;/li&gt;
&lt;li&gt;: 移动光标所在屏幕行行尾。&lt;/li&gt;
&lt;li&gt;n|: 把光标移到递n列上。&lt;/li&gt;
&lt;li&gt;nG: 到文件第n行。&lt;/li&gt;
&lt;li&gt;:n&lt;cr&gt; 移动到第n行。&lt;/li&gt;
&lt;li&gt;:$&lt;cr&gt; 移动到最后一行。&lt;/li&gt;
&lt;li&gt;H: 把光标移到屏幕最顶端一行。&lt;/li&gt;
&lt;li&gt;M: 把光标移到屏幕中间一行。&lt;/li&gt;
&lt;li&gt;L: 把光标移到屏幕最底端一行。&lt;/li&gt;
&lt;li&gt;gg: 到文件头部。&lt;/li&gt;
&lt;li&gt;G: 到文件尾部。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;42-翻屏&#34;&gt;
    &lt;a href=&#34;#42-%e7%bf%bb%e5%b1%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id65&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;4.2 翻屏


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;ctrl+f: 下翻一屏。&lt;/li&gt;
&lt;li&gt;ctrl+b: 上翻一屏。&lt;/li&gt;
&lt;li&gt;ctrl+d: 下翻半屏。&lt;/li&gt;
&lt;li&gt;ctrl+u: 上翻半屏。&lt;/li&gt;
&lt;li&gt;ctrl+e: 向下滚动一行。&lt;/li&gt;
&lt;li&gt;ctrl+y: 向上滚动一行。&lt;/li&gt;
&lt;li&gt;n%: 到文件n%的位置。&lt;/li&gt;
&lt;li&gt;zz: 将当前行移动到屏幕中央。&lt;/li&gt;
&lt;li&gt;zt: 将当前行移动到屏幕顶端。&lt;/li&gt;
&lt;li&gt;zb: 将当前行移动到屏幕底端。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;43-标记&#34;&gt;
    &lt;a href=&#34;#43-%e6%a0%87%e8%ae%b0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id66&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;4.3 标记


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;使用标记可以快速移动。到达标记后，可以用Ctrl+o返回原来的位置。 Ctrl+o和Ctrl+i 很像浏览器上的 后退 和 前进 。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;m{a-z}: 标记光标所在位置，局部标记，只用于当前文件。&lt;/li&gt;
&lt;li&gt;m{A-Z}: 标记光标所在位置，全局标记。标记之后，退出Vim， 重新启动，标记仍然有效。&lt;/li&gt;
&lt;li&gt;`{a-z}: 移动到标记位置。&lt;/li&gt;
&lt;li&gt;‘{a-z}: 移动到标记行的行首。&lt;/li&gt;
&lt;li&gt;`{0-9}：回到上[2-10]次关闭vim时最后离开的位置。&lt;/li&gt;
&lt;li&gt;“: 移动到上次编辑的位置。”也可以，不过“精确到列，而”精确到行 。如果想跳转到更老的位置，可以按C-o，跳转到更新的位置用C-i。&lt;/li&gt;
&lt;li&gt;`”: 移动到上次离开的地方。&lt;/li&gt;
&lt;li&gt;`.: 移动到最后改动的地方。&lt;/li&gt;
&lt;li&gt;:marks 显示所有标记。&lt;/li&gt;
&lt;li&gt;:delmarks a b – 删除标记a和b。&lt;/li&gt;
&lt;li&gt;:delmarks a-c – 删除标记a、b和c。&lt;/li&gt;
&lt;li&gt;:delmarks a c-f – 删除标记a、c、d、e、f。&lt;/li&gt;
&lt;li&gt;:delmarks! – 删除当前缓冲区的所有标记。&lt;/li&gt;
&lt;li&gt;:help mark-motions 查看更多关于mark的知识。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;5-插入文本&#34;&gt;
    &lt;a href=&#34;#5-%e6%8f%92%e5%85%a5%e6%96%87%e6%9c%ac&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id67&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;5. 插入文本


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;51-基本插入&#34;&gt;
    &lt;a href=&#34;#51-%e5%9f%ba%e6%9c%ac%e6%8f%92%e5%85%a5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id68&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;5.1 基本插入


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;i: 在光标前插入；一个小技巧：按8，再按i，进入插入模式，输入=， 按esc进入命令模式，就会出现8个=。 这在插入分割线时非常有用，如30i+&lt;esc&gt;就插入了36个+组成的分割线。&lt;/li&gt;
&lt;li&gt;I: 在当前行第一个非空字符前插入；&lt;/li&gt;
&lt;li&gt;gI: 在当前行第一列插入；&lt;/li&gt;
&lt;li&gt;a: 在光标后插入；&lt;/li&gt;
&lt;li&gt;A: 在当前行最后插入；&lt;/li&gt;
&lt;li&gt;o: 在下面新建一行插入；&lt;/li&gt;
&lt;li&gt;O: 在上面新建一行插入；&lt;/li&gt;
&lt;li&gt;:r filename在当前位置插入另一个文件的内容。&lt;/li&gt;
&lt;li&gt;:[n]r filename在第n行插入另一个文件的内容。&lt;/li&gt;
&lt;li&gt;:r !date 在光标处插入当前日期与时间。同理，:r !command可以将其它shell命令的输出插入当前文档。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;52-改写插入&#34;&gt;
    &lt;a href=&#34;#52-%e6%94%b9%e5%86%99%e6%8f%92%e5%85%a5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id69&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;5.2 改写插入


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;c[n]w: 改写光标后1(n)个词。&lt;/li&gt;
&lt;li&gt;c[n]l: 改写光标后n个字母。&lt;/li&gt;
&lt;li&gt;c[n]h: 改写光标前n个字母。&lt;/li&gt;
&lt;li&gt;[n]cc: 修改当前[n]行。&lt;/li&gt;
&lt;li&gt;[n]s: 以输入的文本替代光标之后1(n)个字符，相当于c[n]l。&lt;/li&gt;
&lt;li&gt;[n]S: 删除指定数目的行，并以所输入文本代替之。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;注意，类似cnw,dnw,ynw的形式同样可以写为ncw,ndw,nyw。&lt;/p&gt;
&lt;h1 id=&#34;6-剪切复制和寄存器&#34;&gt;
    &lt;a href=&#34;#6-%e5%89%aa%e5%88%87%e5%a4%8d%e5%88%b6%e5%92%8c%e5%af%84%e5%ad%98%e5%99%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id70&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;6. 剪切复制和寄存器


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;61-剪切和复制粘贴&#34;&gt;
    &lt;a href=&#34;#61-%e5%89%aa%e5%88%87%e5%92%8c%e5%a4%8d%e5%88%b6%e7%b2%98%e8%b4%b4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id71&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;6.1 剪切和复制、粘贴


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;[n]x: 剪切光标右边n个字符，相当于d[n]l。&lt;/li&gt;
&lt;li&gt;[n]X: 剪切光标左边n个字符，相当于d[n]h。&lt;/li&gt;
&lt;li&gt;y: 复制在可视模式下选中的文本。&lt;/li&gt;
&lt;li&gt;yy or Y: 复制整行文本。&lt;/li&gt;
&lt;li&gt;y[n]w: 复制一(n)个词。&lt;/li&gt;
&lt;li&gt;y[n]l: 复制光标右边1(n)个字符。&lt;/li&gt;
&lt;li&gt;y[n]h: 复制光标左边1(n)个字符。&lt;/li&gt;
&lt;li&gt;yor D: 删除（剪切）当前位置到行尾的内容。&lt;/li&gt;
&lt;li&gt;d[n]w: 删除（剪切）1(n)个单词&lt;/li&gt;
&lt;li&gt;d[n]l: 删除（剪切）光标右边1(n)个字符。&lt;/li&gt;
&lt;li&gt;d[n]h: 删除（剪切）光标左边1(n)个字符。&lt;/li&gt;
&lt;li&gt;d0: 删除（剪切）当前位置到行首的内容&lt;/li&gt;
&lt;li&gt;[n] dd: 删除（剪切）1(n)行。&lt;/li&gt;
&lt;li&gt;:m,nd&lt;cr&gt; 剪切m行到n行的内容。&lt;/li&gt;
&lt;li&gt;d1G或dgg: 剪切光标以上的所有行。&lt;/li&gt;
&lt;li&gt;dG: 剪切光标以下的所有行。&lt;/li&gt;
&lt;li&gt;daw和das：剪切一个词和剪切一个句子，即使光标不在词首和句首也没关系。&lt;/li&gt;
&lt;li&gt;d/f&lt;cr&gt;：这是一个比较高级的组合命令，它将删除当前位置 到下一个f之间的内容。&lt;/li&gt;
&lt;li&gt;p: 在光标之后粘贴。&lt;/li&gt;
&lt;li&gt;P: 在光标之前粘贴。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;62-文本对象&#34;&gt;
    &lt;a href=&#34;#62-%e6%96%87%e6%9c%ac%e5%af%b9%e8%b1%a1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id72&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;6.2 文本对象


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;aw：一个词&lt;/li&gt;
&lt;li&gt;as：一句。&lt;/li&gt;
&lt;li&gt;ap：一段。&lt;/li&gt;
&lt;li&gt;ab：一块（包含在圆括号中的）。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;y, d, c, v都可以跟文本对象。&lt;/p&gt;
&lt;h2 id=&#34;63-寄存器&#34;&gt;
    &lt;a href=&#34;#63-%e5%af%84%e5%ad%98%e5%99%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id73&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;6.3 寄存器


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;a-z：都可以用作寄存器名。”ayy把当前行的内容放入a寄存器。&lt;/li&gt;
&lt;li&gt;A-Z：用大写字母索引寄存器，可以在寄存器中追加内容。 如”Ayy把当前行的内容追加到a寄存器中。&lt;/li&gt;
&lt;li&gt;:reg 显示所有寄存器的内容。&lt;/li&gt;
&lt;li&gt;“”：不加寄存器索引时，默认使用的寄存器。&lt;/li&gt;
&lt;li&gt;“*：当前选择缓冲区，”*yy把当前行的内容放入当前选择缓冲区。&lt;/li&gt;
&lt;li&gt;“+：系统剪贴板。”+yy把当前行的内容放入系统剪贴板。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;7-查找与替换&#34;&gt;
    &lt;a href=&#34;#7-%e6%9f%a5%e6%89%be%e4%b8%8e%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id74&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;7. 查找与替换


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;71-查找&#34;&gt;
    &lt;a href=&#34;#71-%e6%9f%a5%e6%89%be&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id75&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;7.1 查找


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;/something: 在后面的文本中查找something。&lt;/li&gt;
&lt;li&gt;?something: 在前面的文本中查找something。&lt;/li&gt;
&lt;li&gt;/pattern/+number: 将光标停在包含pattern的行后面第number行上。&lt;/li&gt;
&lt;li&gt;/pattern/-number: 将光标停在包含pattern的行前面第number行上。&lt;/li&gt;
&lt;li&gt;n: 向后查找下一个。&lt;/li&gt;
&lt;li&gt;N: 向前查找下一个。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;可以用grep或vimgrep查找一个模式都在哪些地方出现过，&lt;/p&gt;
&lt;p&gt;其中:grep是调用外部的grep程序，而:vimgrep是vim自己的查找算法。&lt;/p&gt;
&lt;p&gt;用法为： :vim[grep]/pattern/[g] [j] files&lt;/p&gt;
&lt;p&gt;g的含义是如果一个模式在一行中多次出现，则这一行也在结果中多次出现。&lt;/p&gt;
&lt;p&gt;j的含义是grep结束后，结果停在第j项，默认是停在第一项。&lt;/p&gt;
&lt;p&gt;vimgrep前面可以加数字限定搜索结果的上限，如&lt;/p&gt;
&lt;p&gt;:1vim/pattern/ % 只查找那个模式在本文件中的第一个出现。&lt;/p&gt;
&lt;p&gt;其实vimgrep在读纯文本电子书时特别有用，可以生成导航的目录。&lt;/p&gt;
&lt;p&gt;比如电子书中每一节的标题形式为：n. xxxx。你就可以这样：&lt;/p&gt;
&lt;p&gt;:vim/^d{1,}./ %&lt;/p&gt;
&lt;p&gt;然后用:cw或:copen查看结果，可以用C-w H把quickfix窗口移到左侧，&lt;/p&gt;
&lt;p&gt;就更像个目录了。&lt;/p&gt;
&lt;h2 id=&#34;72-替换&#34;&gt;
    &lt;a href=&#34;#72-%e6%9b%bf%e6%8d%a2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id76&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;7.2 替换


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:s/old/new - 用new替换当前行第一个old。&lt;/li&gt;
&lt;li&gt;:s/old/new/g - 用new替换当前行所有的old。&lt;/li&gt;
&lt;li&gt;:n1,n2s/old/new/g - 用new替换文件n1行到n2行所有的old。&lt;/li&gt;
&lt;li&gt;:%s/old/new/g - 用new替换文件中所有的old。&lt;/li&gt;
&lt;li&gt;:%s/^/xxx/g - 在每一行的行首插入xxx，^表示行首。&lt;/li&gt;
&lt;li&gt;:%s/表示行尾。&lt;/li&gt;
&lt;li&gt;所有替换命令末尾加上c，每个替换都将需要用户确认。 如：%s/old/new/gc，加上i则忽略大小写(ignore)。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有一种比替换更灵活的方式，它是匹配到某个模式后执行某种命令，&lt;/p&gt;
&lt;p&gt;语法为 :[range]g/pattern/command&lt;/p&gt;
&lt;p&gt;例如 :%g/^ xyz/normal dd。&lt;/p&gt;
&lt;p&gt;表示对于以一个空格和xyz开头的行执行normal模式下的dd命令。&lt;/p&gt;
&lt;p&gt;关于range的规定为：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;如果不指定range，则表示当前行。&lt;/li&gt;
&lt;li&gt;m,n: 从m行到n行。&lt;/li&gt;
&lt;li&gt;0: 最开始一行（可能是这样）。&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;h2 id=&#34;73-正则表达式&#34;&gt;
    &lt;a href=&#34;#73-%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id77&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;7.3 正则表达式


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;高级的查找替换就要用到正则表达式。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;\d: 表示十进制数（我猜的）&lt;/li&gt;
&lt;li&gt;\s: 表示空格&lt;/li&gt;
&lt;li&gt;\S: 非空字符&lt;/li&gt;
&lt;li&gt;\a: 英文字母&lt;/li&gt;
&lt;li&gt;|: 表示 或&lt;/li&gt;
&lt;li&gt;.: 表示.&lt;/li&gt;
&lt;li&gt;{m,n}: 表示m到n个字符。这要和 \s与\a等连用，如 \a{m,n} 表示m 到n个英文字母。&lt;/li&gt;
&lt;li&gt;{m,}: 表示m到无限多个字符。&lt;/li&gt;
&lt;li&gt;**: 当前目录下的所有子目录。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;:help pattern得到更多帮助。&lt;/p&gt;
&lt;h1 id=&#34;9-编辑多个文件&#34;&gt;
    &lt;a href=&#34;#9-%e7%bc%96%e8%be%91%e5%a4%9a%e4%b8%aa%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id82&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;9. 编辑多个文件


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;91-一次编辑多个文件&#34;&gt;
    &lt;a href=&#34;#91-%e4%b8%80%e6%ac%a1%e7%bc%96%e8%be%91%e5%a4%9a%e4%b8%aa%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id83&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;9.1 一次编辑多个文件


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;我们可以一次打开多个文件，如&lt;/p&gt;
&lt;blockquote&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-0-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-0-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vi a.txt b.txt c.txt&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;使用:next(:n)编辑下一个文件。&lt;/li&gt;
&lt;li&gt;:2n 编辑下2个文件。&lt;/li&gt;
&lt;li&gt;使用:previous或:N编辑上一个文件。&lt;/li&gt;
&lt;li&gt;使用:wnext，保存当前文件，并编辑下一个文件。&lt;/li&gt;
&lt;li&gt;使用:wprevious，保存当前文件，并编辑上一个文件。&lt;/li&gt;
&lt;li&gt;使用:args 显示文件列表。&lt;/li&gt;
&lt;li&gt;:n filenames或:args filenames 指定新的文件列表。&lt;/li&gt;
&lt;li&gt;vi -o filenames 在水平分割的多个窗口中编辑多个文件。&lt;/li&gt;
&lt;li&gt;vi -O filenames 在垂直分割的多个窗口中编辑多个文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;92-多标签编辑&#34;&gt;
    &lt;a href=&#34;#92-%e5%a4%9a%e6%a0%87%e7%ad%be%e7%bc%96%e8%be%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id84&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;9.2 多标签编辑


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;vim -p files: 打开多个文件，每个文件占用一个标签页。&lt;/li&gt;
&lt;li&gt;:tabe, tabnew – 如果加文件名，就在新的标签中打开这个文件， 否则打开一个空缓冲区。&lt;/li&gt;
&lt;li&gt;^w gf – 在新的标签页里打开光标下路径指定的文件。&lt;/li&gt;
&lt;li&gt;:tabn – 切换到下一个标签。Control + PageDown，也可以。&lt;/li&gt;
&lt;li&gt;:tabp – 切换到上一个标签。Control + PageUp，也可以。&lt;/li&gt;
&lt;li&gt;[n] gt – 切换到下一个标签。如果前面加了 n ， 就切换到第n个标签。第一个标签的序号就是1。&lt;/li&gt;
&lt;li&gt;:tab split – 将当前缓冲区的内容在新页签中打开。&lt;/li&gt;
&lt;li&gt;:tabc[lose] – 关闭当前的标签页。&lt;/li&gt;
&lt;li&gt;:tabo[nly] – 关闭其它的标签页。&lt;/li&gt;
&lt;li&gt;:tabs – 列出所有的标签页和它们包含的窗口。&lt;/li&gt;
&lt;li&gt;:tabm[ove] [N] – 移动标签页，移动到第N个标签页之后。 如 tabm 0 当前标签页，就会变成第一个标签页。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;93-缓冲区&#34;&gt;
    &lt;a href=&#34;#93-%e7%bc%93%e5%86%b2%e5%8c%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id85&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;9.3 缓冲区


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:buffers或:ls或:files 显示缓冲区列表。&lt;/li&gt;
&lt;li&gt;ctrl+^：在最近两个缓冲区间切换。&lt;/li&gt;
&lt;li&gt;:bn – 下一个缓冲区。&lt;/li&gt;
&lt;li&gt;:bp – 上一个缓冲区。&lt;/li&gt;
&lt;li&gt;:bl – 最后一个缓冲区。&lt;/li&gt;
&lt;li&gt;:b[n]或:[n]b – 切换到第n个缓冲区。&lt;/li&gt;
&lt;li&gt;:nbw(ipeout) – 彻底删除第n个缓冲区。&lt;/li&gt;
&lt;li&gt;:nbd(elete) – 删除第n个缓冲区，并未真正删除，还在unlisted列表中。&lt;/li&gt;
&lt;li&gt;:ba[ll] – 把所有的缓冲区在当前页中打开，每个缓冲区占一个窗口。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;10-分屏编辑&#34;&gt;
    &lt;a href=&#34;#10-%e5%88%86%e5%b1%8f%e7%bc%96%e8%be%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id86&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10. 分屏编辑


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;vim -o file1 file2:水平分割窗口，同时打开file1和file2&lt;/li&gt;
&lt;li&gt;vim -O file1 file2:垂直分割窗口，同时打开file1和file2&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;101-水平分割&#34;&gt;
    &lt;a href=&#34;#101-%e6%b0%b4%e5%b9%b3%e5%88%86%e5%89%b2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id87&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10.1 水平分割


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:split(:sp) – 把当前窗水平分割成两个窗口。(CTRL-W s 或 CTRL-W CTRL-S) 注意如果在终端下，CTRL-S可能会冻结终端，请按CTRL-Q继续。&lt;/li&gt;
&lt;li&gt;:split filename – 水平分割窗口，并在新窗口中显示另一个文件。&lt;/li&gt;
&lt;li&gt;:nsplit(:nsp) – 水平分割出一个n行高的窗口。&lt;/li&gt;
&lt;li&gt;:[N]new – 水平分割出一个N行高的窗口，并编辑一个新文件。 (CTRL-W n或 CTRL-W CTRL-N)&lt;/li&gt;
&lt;li&gt;ctrl+w f –水平分割出一个窗口，并在新窗口打开名称为光标所在词的文件 。&lt;/li&gt;
&lt;li&gt;C-w C-^ – 水平分割一个窗口，打开刚才编辑的文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;102-垂直分割&#34;&gt;
    &lt;a href=&#34;#102-%e5%9e%82%e7%9b%b4%e5%88%86%e5%89%b2&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id88&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10.2 垂直分割


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:vsplit(:vsp) – 把当前窗口分割成水平分布的两个窗口。 (CTRL-W v或CTRL CTRL-V)&lt;/li&gt;
&lt;li&gt;:[N]vne[w] – 垂直分割出一个新窗口。&lt;/li&gt;
&lt;li&gt;:vertical 水平分割的命令： 相应的垂直分割。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;103-关闭子窗口&#34;&gt;
    &lt;a href=&#34;#103-%e5%85%b3%e9%97%ad%e5%ad%90%e7%aa%97%e5%8f%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id89&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10.3 关闭子窗口


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:qall – 关闭所有窗口，退出vim。&lt;/li&gt;
&lt;li&gt;:wall – 保存所有修改过的窗口。&lt;/li&gt;
&lt;li&gt;:only – 只保留当前窗口，关闭其它窗口。(CTRL-W o)&lt;/li&gt;
&lt;li&gt;:close – 关闭当前窗口，CTRL-W c能实现同样的功能。 (象 :q :x同样工作 )&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;104-调整窗口大小&#34;&gt;
    &lt;a href=&#34;#104-%e8%b0%83%e6%95%b4%e7%aa%97%e5%8f%a3%e5%a4%a7%e5%b0%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id90&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10.4 调整窗口大小


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;ctrl+w + –当前窗口增高一行。也可以用n增高n行。&lt;/li&gt;
&lt;li&gt;ctrl+w - –当前窗口减小一行。也可以用n减小n行。&lt;/li&gt;
&lt;li&gt;ctrl+w _ –当前窗口扩展到尽可能的大。也可以用n设定行数。&lt;/li&gt;
&lt;li&gt;:resize n – 当前窗口n行高。&lt;/li&gt;
&lt;li&gt;ctrl+w = – 所有窗口同样高度。&lt;/li&gt;
&lt;li&gt;n ctrl+w _ – 当前窗口的高度设定为n行。&lt;/li&gt;
&lt;li&gt;ctrl+w &amp;lt; –当前窗口减少一列。也可以用n减少n列。&lt;/li&gt;
&lt;li&gt;ctrl+w &amp;gt; –当前窗口增宽一列。也可以用n增宽n列。&lt;/li&gt;
&lt;li&gt;ctrl+w | –当前窗口尽可能的宽。也可以用n设定列数。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;105-切换和移动窗口&#34;&gt;
    &lt;a href=&#34;#105-%e5%88%87%e6%8d%a2%e5%92%8c%e7%a7%bb%e5%8a%a8%e7%aa%97%e5%8f%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id91&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;10.5 切换和移动窗口


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;如果支持鼠标，切换和调整子窗口的大小就简单了。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ctrl+w ctrl+w: 切换到下一个窗口。或者是ctrl+w w。&lt;/li&gt;
&lt;li&gt;ctrl+w p: 切换到前一个窗口。&lt;/li&gt;
&lt;li&gt;ctrl+w h(l,j,k):切换到左（右，下，上）的窗口。&lt;/li&gt;
&lt;li&gt;ctrl+w t(b):切换到最上（下）面的窗口。&lt;BR&gt;&lt;/li&gt;
&lt;li&gt;ctrl+w H(L,K,J): 将当前窗口移动到最左（右、上、下）面。&lt;/li&gt;
&lt;li&gt;ctrl+w r：旋转窗口的位置。&lt;/li&gt;
&lt;li&gt;ctrl+w T: 将当前的窗口移动到新的标签页上。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;11-快速编辑&#34;&gt;
    &lt;a href=&#34;#11-%e5%bf%ab%e9%80%9f%e7%bc%96%e8%be%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id92&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;11. 快速编辑


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;111-改变大小写&#34;&gt;
    &lt;a href=&#34;#111-%e6%94%b9%e5%8f%98%e5%a4%a7%e5%b0%8f%e5%86%99&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id93&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;11.1 改变大小写


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;~: 反转光标所在字符的大小写。&lt;/li&gt;
&lt;li&gt;可视模式下的U或u：把选中的文本变为大写或小写。&lt;/li&gt;
&lt;li&gt;gu(U)接范围（如$，或G），可以把从光标当前位置到指定位置之间字母全部 转换成小写或大写。如ggguG，就是把开头到最后一行之间的字母全部变为小 写。再如gu5j，把当前行和下面四行全部变成小写。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;112-替换normal模式&#34;&gt;
    &lt;a href=&#34;#112-%e6%9b%bf%e6%8d%a2normal%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id94&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;11.2 替换（normal模式）


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;r: 替换光标处的字符，同样支持汉字。&lt;/li&gt;
&lt;li&gt;R: 进入替换模式，按esc回到正常模式。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;113-撤消与重做normal模式&#34;&gt;
    &lt;a href=&#34;#113-%e6%92%a4%e6%b6%88%e4%b8%8e%e9%87%8d%e5%81%9anormal%e6%a8%a1%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id95&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;11.3 撤消与重做（normal模式）


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;[n] u: 取消一(n)个改动。&lt;/li&gt;
&lt;li&gt;:undo 5 – 撤销5个改变。&lt;/li&gt;
&lt;li&gt;:undolist – 你的撤销历史。&lt;/li&gt;
&lt;li&gt;ctrl + r: 重做最后的改动。&lt;/li&gt;
&lt;li&gt;U: 取消当前行中所有的改动。&lt;/li&gt;
&lt;li&gt;:earlier 4m – 回到4分钟前&lt;/li&gt;
&lt;li&gt;:later 55s – 前进55秒&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;114-宏&#34;&gt;
    &lt;a href=&#34;#114-%e5%ae%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id96&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;11.4 宏


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;. –重复上一个编辑动作&lt;/li&gt;
&lt;li&gt;qa：开始录制宏a（键盘操作记录）&lt;/li&gt;
&lt;li&gt;q：停止录制&lt;/li&gt;
&lt;li&gt;@a：播放宏a&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;12-编辑特殊文件&#34;&gt;
    &lt;a href=&#34;#12-%e7%bc%96%e8%be%91%e7%89%b9%e6%ae%8a%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id97&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;12. 编辑特殊文件


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;121-文件加解密&#34;&gt;
    &lt;a href=&#34;#121-%e6%96%87%e4%bb%b6%e5%8a%a0%e8%a7%a3%e5%af%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id98&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;12.1 文件加解密


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;vim -x file: 开始编辑一个加密的文件。&lt;/li&gt;
&lt;li&gt;:X – 为当前文件设置密码。&lt;/li&gt;
&lt;li&gt;:set key= – 去除文件的密码。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/admin/vim-quick-edit.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;这里是


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


 滇狐总结的比较高级的vi技巧。&lt;/p&gt;
&lt;h2 id=&#34;122-文件的编码&#34;&gt;
    &lt;a href=&#34;#122-%e6%96%87%e4%bb%b6%e7%9a%84%e7%bc%96%e7%a0%81&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id99&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;12.2 文件的编码


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:e ++enc=utf8 filename, 让vim用utf-8的编码打开这个文件。&lt;/li&gt;
&lt;li&gt;:w ++enc=gbk，不管当前文件什么编码，把它转存成gbk编码。&lt;/li&gt;
&lt;li&gt;:set fenc或:set fileencoding，查看当前文件的编码。&lt;/li&gt;
&lt;li&gt;在vimrc中添加set fileencoding=ucs-bom,utf-8,cp936，vim会根据要打开的文件选择合适的编码。 注意：编码之间不要留空格。 cp936对应于gbk编码。 ucs-bom对应于windows下的文件格式。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;让vim 正确处理文件格式和文件编码，有赖于 &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/admin/vimrc.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;~/.vimrc的正确配置


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


&lt;/p&gt;
&lt;h2 id=&#34;123-文件格式&#34;&gt;
    &lt;a href=&#34;#123-%e6%96%87%e4%bb%b6%e6%a0%bc%e5%bc%8f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id100&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;12.3 文件格式


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;大致有三种文件格式：unix, dos, mac. 三种格式的区别主要在于回车键的编码：dos 下是回车加换行，unix 下只有 换行符，mac 下只有回车符。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:e ++ff=dos filename, 让vim用dos格式打开这个文件。&lt;/li&gt;
&lt;li&gt;:w ++ff=mac filename, 以mac格式存储这个文件。&lt;/li&gt;
&lt;li&gt;:set ff，显示当前文件的格式。&lt;/li&gt;
&lt;li&gt;在vimrc中添加set fileformats=unix,dos,mac，让vim自动识别文件格式。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;13-编程辅助&#34;&gt;
    &lt;a href=&#34;#13-%e7%bc%96%e7%a8%8b%e8%be%85%e5%8a%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id101&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13. 编程辅助


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;131-一些按键&#34;&gt;
    &lt;a href=&#34;#131-%e4%b8%80%e4%ba%9b%e6%8c%89%e9%94%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id102&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.1 一些按键


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;gd: 跳转到局部变量的定义处；&lt;/li&gt;
&lt;li&gt;gD: 跳转到全局变量的定义处，从当前文件开头开始搜索；&lt;/li&gt;
&lt;li&gt;g;: 上一个修改过的地方；&lt;/li&gt;
&lt;li&gt;g,: 下一个修改过的地方；&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;/li&gt;
&lt;li&gt;%: 不仅能移动到匹配的(),{}或[]上，而且能在#if，#else， #endif之间跳跃。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;下面的括号匹配对编程很实用的。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ci’, di’, yi’：修改、剪切或复制’之间的内容。&lt;/li&gt;
&lt;li&gt;ca’, da’, ya’：修改、剪切或复制’之间的内容，包含’。&lt;/li&gt;
&lt;li&gt;ci”, di”, yi”：修改、剪切或复制”之间的内容。&lt;/li&gt;
&lt;li&gt;ca”, da”, ya”：修改、剪切或复制”之间的内容，包含”。&lt;/li&gt;
&lt;li&gt;ci(, di(, yi(：修改、剪切或复制()之间的内容。&lt;/li&gt;
&lt;li&gt;ca(, da(, ya(：修改、剪切或复制()之间的内容，包含()。&lt;/li&gt;
&lt;li&gt;ci[, di[, yi[：修改、剪切或复制[]之间的内容。&lt;/li&gt;
&lt;li&gt;ca[, da[, ya[：修改、剪切或复制[]之间的内容，包含[]。&lt;/li&gt;
&lt;li&gt;ci{, di{, yi{：修改、剪切或复制{}之间的内容。&lt;/li&gt;
&lt;li&gt;ca{, da{, ya{：修改、剪切或复制{}之间的内容，包含{}。&lt;/li&gt;
&lt;li&gt;ci&amp;lt;, di&amp;lt;, yi&amp;lt;：修改、剪切或复制&amp;lt;&amp;gt;之间的内容。&lt;/li&gt;
&lt;li&gt;ca&amp;lt;, da&amp;lt;, ya&amp;lt;：修改、剪切或复制&amp;lt;&amp;gt;之间的内容，包含&amp;lt;&amp;gt;。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;132-ctags&#34;&gt;
    &lt;a href=&#34;#132-ctags&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id103&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.2 ctags


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;ctags -R: 生成tag文件，-R表示也为子目录中的文件生成tags&lt;/li&gt;
&lt;li&gt;:set tags=path/tags – 告诉ctags使用哪个tag文件&lt;/li&gt;
&lt;li&gt;:tag xyz – 跳到xyz的定义处，或者将光标放在xyz上按C-]，返回用C-t&lt;/li&gt;
&lt;li&gt;:stag xyz – 用分割的窗口显示xyz的定义，或者C-w ]， 如果用C-w n ]，就会打开一个n行高的窗口&lt;/li&gt;
&lt;li&gt;:ptag xyz – 在预览窗口中打开xyz的定义，热键是C-w }。&lt;/li&gt;
&lt;li&gt;:pclose – 关闭预览窗口。热键是C-w z。&lt;/li&gt;
&lt;li&gt;:pedit abc.h – 在预览窗口中编辑abc.h&lt;/li&gt;
&lt;li&gt;:psearch abc – 搜索当前文件和当前文件include的文件，显示包含abc的行。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;有时一个tag可能有多个匹配，如函数重载，一个函数名就会有多个匹配。 这种情况会先跳转到第一个匹配处。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:[n]tnext – 下一[n]个匹配。&lt;/li&gt;
&lt;li&gt;:[n]tprev – 上一[n]个匹配。&lt;/li&gt;
&lt;li&gt;:tfirst – 第一个匹配&lt;/li&gt;
&lt;li&gt;:tlast – 最后一个匹配&lt;/li&gt;
&lt;li&gt;:tselect tagname – 打开选择列表&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;tab键补齐&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:tag xyz&lt;tab&gt; – 补齐以xyz开头的tag名，继续按tab键，会显示其他的。&lt;/li&gt;
&lt;li&gt;:tag /xyz&lt;tab&gt; – 会用名字中含有xyz的tag名补全。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;133-cscope&#34;&gt;
    &lt;a href=&#34;#133-cscope&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id104&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.3 cscope


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;cscope -Rbq: 生成cscope.out文件&lt;/li&gt;
&lt;li&gt;:cs add /path/to/cscope.out /your/work/dir&lt;/li&gt;
&lt;li&gt;:cs find c func – 查找func在哪些地方被调用&lt;/li&gt;
&lt;li&gt;:cw – 打开quickfix窗口查看结果&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;134-gtags&#34;&gt;
    &lt;a href=&#34;#134-gtags&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id105&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.4 gtags


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;Gtags综合了ctags和cscope的功能。 使用Gtags之前，你需要安装GNU Gtags。 然后在工程目录运行 gtags 。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:Gtags funcname 定位到 funcname 的定义处。&lt;/li&gt;
&lt;li&gt;:Gtags -r funcname 查询 funcname被引用的地方。&lt;/li&gt;
&lt;li&gt;:Gtags -s symbol 定位 symbol 出现的地方。&lt;/li&gt;
&lt;li&gt;:Gtags -g string Goto string 出现的地方。 :Gtags -gi string 忽略大小写。&lt;/li&gt;
&lt;li&gt;:Gtags -f filename 显示 filename 中的函数列表。 你可以用 :Gtags -f % 显示当前文件。&lt;/li&gt;
&lt;li&gt;:Gtags -P pattern 显示路径中包含特定模式的文件。 如 :Gtags -P .h$ 显示所有头文件， :Gtags -P /vm/ 显示vm目录下的文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;135-编译&#34;&gt;
    &lt;a href=&#34;#135-%e7%bc%96%e8%af%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id106&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.5 编译


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;vim提供了:make来编译程序，默认调用的是make， 如果你当前目录下有makefile，简单地:make即可。&lt;/p&gt;
&lt;p&gt;如果你没有make程序，你可以通过配置makeprg选项来更改make调用的程序。 如果你只有一个abc.&lt;a class=&#34;link&#34; href=&#34;http://lib.csdn.net/base/java&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Java


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;


文件，你可以这样设置：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-1-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-1-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;set makeprg=javac\ abc.java&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;然后:make即可。如果程序有错，可以通过quickfix窗口查看错误。 不过如果要正确定位错误，需要设置好errorformat，让vim识别错误信息。 如：&lt;/p&gt;

&lt;div class=&#34;logan-code-block&#34;&gt;
    &lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34; id=&#34;hl-2-1&#34;&gt;&lt;a class=&#34;lnlinks&#34; href=&#34;#hl-2-1&#34;&gt;1&lt;/a&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;:setl efm=%A%f:%l:\ %m,%-Z%p^,%-C%.%#&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;

  &lt;div class=&#34;code-scroll&#34; aria-label=&#34;代码块滚动工具栏&#34;&gt;
    &lt;button class=&#34;code-scroll-left iconfont-logan icon-logan-circle-left-solid&#34; aria-label=&#34;向左滚动&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;code-scroll-right iconfont-logan icon-logan-circle-right-solid&#34; aria-label=&#34;向右滚动&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;

  &lt;div class=&#34;code-tools&#34; aria-label=&#34;代码块工具栏&#34;&gt;
    &lt;div class=&#34;copy-text&#34;&gt;Copied!&lt;/div&gt;
    &lt;button class=&#34;copy-code-button iconfont-logan icon-logan-copy-round3&#34; aria-label=&#34;复制&#34;&gt;&lt;/button&gt;
    &lt;button class=&#34;my-code-fold iconfont-logan icon-logan-circle-chevron-down-solid expand1&#34; aria-label=&#34;折叠&#34;&gt;&lt;/button&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;%f表示文件名，%l表示行号， %m表示错误信息，其它的还不能理解。 请参考 :help errorformat。&lt;/p&gt;
&lt;h2 id=&#34;136-快速修改窗口&#34;&gt;
    &lt;a href=&#34;#136-%e5%bf%ab%e9%80%9f%e4%bf%ae%e6%94%b9%e7%aa%97%e5%8f%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id107&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.6 快速修改窗口


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;p&gt;其实是quickfix插件提供的功能， 对编译调试程序非常有用 :)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:copen – 打开快速修改窗口。&lt;/li&gt;
&lt;li&gt;:cclose – 关闭快速修改窗口。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;快速修改窗口在make程序时非常有用，当make之后：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;:cl – 在快速修改窗口中列出错误。&lt;/li&gt;
&lt;li&gt;:cn – 定位到下一个错误。&lt;/li&gt;
&lt;li&gt;:cp – 定位到上一个错误。&lt;/li&gt;
&lt;li&gt;:cr – 定位到第一个错误。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;137-自动补全&#34;&gt;
    &lt;a href=&#34;#137-%e8%87%aa%e5%8a%a8%e8%a1%a5%e5%85%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id108&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.7 自动补全


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;C-x C-s – 拼写建议。&lt;/li&gt;
&lt;li&gt;C-x C-v – 补全vim选项和命令。&lt;/li&gt;
&lt;li&gt;C-x C-l – 整行补全。&lt;/li&gt;
&lt;li&gt;C-x C-f – 自动补全文件路径。弹出菜单后，按C-f循环选择，当然也可以按 C-n和C-p。&lt;/li&gt;
&lt;li&gt;C-x C-p 和C-x C-n – 用文档中出现过的单词补全当前的词。 直接按C-p和C-n也可以。&lt;/li&gt;
&lt;li&gt;C-x C-o – 编程时可以补全关键字和函数名啊。&lt;/li&gt;
&lt;li&gt;C-x C-i – 根据头文件内关键字补全。&lt;/li&gt;
&lt;li&gt;C-x C-d – 补全宏定义。&lt;/li&gt;
&lt;li&gt;C-x C-n – 按缓冲区中出现过的关键字补全。 直接按C-n或C-p即可。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;当弹出补全菜单后：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;C-p 向前切换成员；&lt;/li&gt;
&lt;li&gt;C-n 向后切换成员；&lt;/li&gt;
&lt;li&gt;C-e 退出下拉菜单，并退回到原来录入的文字；&lt;/li&gt;
&lt;li&gt;C-y 退出下拉菜单，并接受当前选项。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;138-多行缩进缩出&#34;&gt;
    &lt;a href=&#34;#138-%e5%a4%9a%e8%a1%8c%e7%bc%a9%e8%bf%9b%e7%bc%a9%e5%87%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id109&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.8 多行缩进缩出


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;正常模式下，按两下&amp;gt;;光标所在行会缩进。&lt;/li&gt;
&lt;li&gt;如果先按了n，再按两下&amp;gt;;，光标以下的n行会缩进。&lt;/li&gt;
&lt;li&gt;对应的，按两下&amp;lt;;，光标所在行会缩出。&lt;/li&gt;
&lt;li&gt;如果在编辑代码文件，可以用=进行调整。&lt;/li&gt;
&lt;li&gt;在可视模式下，选择要调整的代码块，按=，代码会按书写规则缩排好。&lt;/li&gt;
&lt;li&gt;或者n =，调整n行代码的缩排。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;139-折叠&#34;&gt;
    &lt;a href=&#34;#139-%e6%8a%98%e5%8f%a0&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id110&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;13.9 折叠


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;zf – 创建折叠的命令，可以在一个可视区域上使用该命令；&lt;/li&gt;
&lt;li&gt;zd – 删除当前行的折叠；&lt;/li&gt;
&lt;li&gt;zD – 删除当前行的折叠；&lt;/li&gt;
&lt;li&gt;zfap – 折叠光标所在的段；&lt;/li&gt;
&lt;li&gt;zo – 打开折叠的文本；&lt;/li&gt;
&lt;li&gt;zc – 收起折叠；&lt;/li&gt;
&lt;li&gt;za – 打开/关闭当前折叠；&lt;/li&gt;
&lt;li&gt;zr – 打开嵌套的折行；&lt;/li&gt;
&lt;li&gt;zm – 收起嵌套的折行；&lt;/li&gt;
&lt;li&gt;zR (zO) – 打开所有折行；&lt;/li&gt;
&lt;li&gt;zM (zC) – 收起所有折行；&lt;/li&gt;
&lt;li&gt;zj – 跳到下一个折叠处；&lt;/li&gt;
&lt;li&gt;zk – 跳到上一个折叠处；&lt;/li&gt;
&lt;li&gt;zi – enable/disable fold;&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;14-命令行&#34;&gt;
    &lt;a href=&#34;#14-%e5%91%bd%e4%bb%a4%e8%a1%8c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id111&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;14. 命令行


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;p&gt;normal模式下按:进入命令行模式&lt;/p&gt;
&lt;h2 id=&#34;141-命令行模式下的快捷键&#34;&gt;
    &lt;a href=&#34;#141-%e5%91%bd%e4%bb%a4%e8%a1%8c%e6%a8%a1%e5%bc%8f%e4%b8%8b%e7%9a%84%e5%bf%ab%e6%8d%b7%e9%94%ae&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id112&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;14.1 命令行模式下的快捷键：


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;上下方向键：上一条或者下一条命令。如果已经输入了部分命令，则找上一 条或者下一条匹配的命令。&lt;/li&gt;
&lt;li&gt;左右方向键：左/右移一个字符。&lt;/li&gt;
&lt;li&gt;C-w： 向前删除一个单词。&lt;/li&gt;
&lt;li&gt;C-h： 向前删除一个字符，等同于Backspace。&lt;/li&gt;
&lt;li&gt;C-u： 从当前位置移动到命令行开头。&lt;/li&gt;
&lt;li&gt;C-b： 移动到命令行开头。&lt;/li&gt;
&lt;li&gt;C-e： 移动到命令行末尾。&lt;/li&gt;
&lt;li&gt;Shift-Left： 左移一个单词。&lt;/li&gt;
&lt;li&gt;Shift-Right： 右移一个单词。&lt;/li&gt;
&lt;li&gt;@： 重复上一次的冒号命令。&lt;/li&gt;
&lt;li&gt;q： 正常模式下，q然后按’:’，打开命令行历史缓冲区， 可以像编辑文件一样编辑命令。&lt;/li&gt;
&lt;li&gt;q/和q? 可以打开查找历史记录。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;142-执行外部命令&#34;&gt;
    &lt;a href=&#34;#142-%e6%89%a7%e8%a1%8c%e5%a4%96%e9%83%a8%e5%91%bd%e4%bb%a4&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id113&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;14.2 执行外部命令


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:! cmd 执行外部命令。&lt;/li&gt;
&lt;li&gt;:!! 执行上一次的外部命令。&lt;/li&gt;
&lt;li&gt;:sh 调用shell，用exit返回vim。&lt;/li&gt;
&lt;li&gt;:r !cmd 将命令的返回结果插入文件当前位置。&lt;/li&gt;
&lt;li&gt;:m,nw !cmd 将文件的m行到n行之间的内容做为命令输入执行命令。&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;15-其它&#34;&gt;
    &lt;a href=&#34;#15-%e5%85%b6%e5%ae%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id114&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;15. 其它


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h1&gt;&lt;h2 id=&#34;151-工作目录&#34;&gt;
    &lt;a href=&#34;#151-%e5%b7%a5%e4%bd%9c%e7%9b%ae%e5%bd%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id115&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;15.1 工作目录


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:pwd 显示vim的工作目录。&lt;/li&gt;
&lt;li&gt;:cd path 改变vim的工作目录。&lt;/li&gt;
&lt;li&gt;:set autochdir 可以让vim 根据编辑的文件自动切换工作目录。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;152-一些快捷键收集中&#34;&gt;
    &lt;a href=&#34;#152-%e4%b8%80%e4%ba%9b%e5%bf%ab%e6%8d%b7%e9%94%ae%e6%94%b6%e9%9b%86%e4%b8%ad&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id116&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;15.2 一些快捷键（收集中）


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;K: 打开光标所在词的manpage。&lt;/li&gt;
&lt;li&gt;*: 向下搜索光标所在词。&lt;/li&gt;
&lt;li&gt;g*: 同上，但部分符合即可。&lt;/li&gt;
&lt;li&gt;#: 向上搜索光标所在词。&lt;/li&gt;
&lt;li&gt;g#: 同上，但部分符合即可。&lt;/li&gt;
&lt;li&gt;g C-g: 统计全文或统计部分的字数。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;153-在线帮助&#34;&gt;
    &lt;a href=&#34;#153-%e5%9c%a8%e7%ba%bf%e5%b8%ae%e5%8a%a9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;  
    &lt;a class=&#34;link&#34; href=&#34;http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html#id117&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;15.3 在线帮助


&lt;span style=&#34;white-space: nowrap;&#34; class=&#34;link-text iconfont-logan icon-logan-arrow-up-right-from-square-solid&#34;&gt;&lt;/span&gt;

&lt;/a&gt;



&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;:h(elp)或F1 打开总的帮助。&lt;/li&gt;
&lt;li&gt;:help user-manual 打开用户手册。&lt;/li&gt;
&lt;li&gt;命令帮助的格式为：第一行指明怎么使用那个命令； 然后是缩进的一段解释这个命令的作用，然后是进一步的信息。&lt;/li&gt;
&lt;li&gt;:helptags somepath 为somepath中的文档生成索引。&lt;/li&gt;
&lt;li&gt;:helpgrep 可以搜索整个帮助文档，匹配的列表显示在quickfix窗口中。&lt;/li&gt;
&lt;li&gt;Ctrl+] 跳转到tag主题，Ctrl+t 跳回。&lt;/li&gt;
&lt;li&gt;:ver 显示版本信息。&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
