一.为何要学习vi
# 所有的UNIX-like系统都会内置vi文本编辑器,其他的文本编辑器则不一定会存在;
# 很多软件的编辑接口都会主动调用vi;
# vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的正确性,方便程序设计;
# 因为程序简单,编辑速度相当快速。
对于什么是vim?其实可以将vim看作是vi的高级版本。vim是一个程序开发工具相比于vi具有更强大的功能。
二.vi的三种模式
vi具有三种模式:一般命令模式、编辑模式、命令行模式。
一般命令模式可以与编辑模式及命令行模式切换,但编辑模式与命令行模式之间不可相互切换(这点比较重要)。具体三种的相互关系如下:

三种模式在Ubuntu 18.04.5 on Windows中的显示如下:
一般命令模式(command mode):
输入命令 vi 文件名

就可以进入一般命令模式:

编辑模式(insert mode):
在一般命令模式下按下"i、I、a、A、o、O"可以进入插入的编辑模式,左下角显示为INSERT:

在一般命令模式下按下"r、R"可以进入替换的编辑模式,左下角显示为REPLACE:

命令行模式(command-line mode):
在一般命令模式下输入“:”或“?”或“/”可以进入命令行模式(最左下角出现的“:”就代表进入了命令行模式):

要退出(Quite)保存(Write)文本编辑器就必须在命令行模式下输入"q"、"w"或者两者的组合才可以。

三.在一般命令模式下常用的命令
在一般命令模式下常用的一些功能按键说明





在vi中,数字是很有意义的,数字通常代表重复做几次的意思,也有可能是代表去到第几个什么什么的意思。例如“10yy”代表复制光标所在的向下10行。那“10dd"呢?
四.写这边博客的目的
对于为什么写这篇博客,其实目的很简单。对于这些基础功能键有很多(这里仅仅列出了常用的),我们需要全部背下来吗?背当然是不可取的,而是当我们有疑问可以有能够去查找的方向。或者使用多了,就熟记于心了。
我是老胡,让我们一起每天进步一点点❤️ ❤️


![[附源码]Python计算机毕业设计Django框架的资产管理系统设计与实现](https://img-blog.csdnimg.cn/cd497e7d75fe42c2aead197392c16eef.png)
![[附源码]Python计算机毕业设计SSM京津冀区域产学研项目管理信息系统(程序+LW)](https://img-blog.csdnimg.cn/b8ce38ee822940c4af0211c39b52e157.png)




![[附源码]计算机毕业设计ssm新能源电动汽车充电桩服务APP](https://img-blog.csdnimg.cn/90c5d8fcd0ec4ebfa2f979697cc2fafd.png)










