6.1 vi和vim的基本介绍
所有的Linux系统都会内建vi文本编辑器。
vim具有程序编辑能力,可以看做是vi的增强版,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完,编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
6.2 vi和vim常用的三种模式
- 正常模式:
以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制,粘贴】来处理你的文件数据。
- 插入模式:
按下i,I,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可。
- 命令行模式:
在这个模式当中,可以提供你相关指令,完成读取,存盘,替换,离开vim,显示行号等的动作则是在此模式中达成的!
三种模式相互转化图

6.3 vi和vim的基本使用
1、查看当前目录下的内容,然后输入vim hello.java

2、进入到正常模式,不能输入任何内容,只有进入到插入模式才行,按i

3、输入内容,然后按ESC退出插入模式

4、输入:或者/进入命令模式,:wq写入退出

5、说明文件已经保存成功

6、:q没有改过内容就单纯退出,改过了就不能使用了,只能:q!强制退出,不对该文件作修改

6.3 vi和vim快捷键
1、拷贝当前行【yy】,拷贝当前行向下3行【3yy】,粘贴【p】。

2、删除当前行dd,删除当前行向下的5行【5dd】。
3、在文件中查找某个单词【命令行下/关键字,回车查找,输入n就是查找下一个】。

4、设置文件的行号,取消文件的行号。【命令行下:set nu和:set nonu】


5、到文档的最末行【G】和最首行【gg】。
6、撤销上一个动作【u】。

7、将光标移动到20行【20+shift+g】,不过要先设置行号。