之前我们说过,在Linux操作系统中一切皆文本和目录,一些重要的配置文件也是文本文件,那我们就肯定需要对它们进行配置,那我们应该改怎样配置他们呢?加下来我们就需要用到Vim或Vi文本编辑器,它就像Windows系统中的记事本相类似。
首先我们看一下Vi与Vim的区别吧。
Vi:
Vim:
我想区别很明显吧。对,就是Vim具有颜色突出显示的功能,就像Python语言所用的IDEL编辑器一样,用不同的颜色来突出语法结构,这对我们在查找位置,排错具有重要的作用,Vim也是同理。下面我们来看一看这个神器怎么来用吧。
1. 概述:
1)Vi是命令行界面下的文本编辑器,由Bill Joy(威廉·纳尔逊·乔伊)在1976年开发出来,当时名叫ex,最早发布在BSD上。
2) Vim是1991年Bram Moolenaar(布拉姆·米勒)对vi进行改进的产物,加入了对GUI(图形用户界面)的支持。
2. 编辑器的编辑模式:命令模式、输入模式、末行模式
3. 对文件的操作
1) 打开文件
a) :e 文件名(打开新的文件到编辑器中)
b) :e! 文件名 (打开新的文件到编辑器中,并放弃对当前文件的修改)
2) 读取文件
:r文件名(读取文件内容到当前编辑器中)
3) 保存文件
:w(保存对编辑器中已打开文件的修改)
4) 另存为文件
:w新文件名 (将编辑器中的内容另存到指定文件中)
5) 退出编辑器
a) :q(对编辑器中的内容无操作,退出)
b) :qw(保存退出)
c) :q!(强制退出,不保存)
4. 翻页操作
操作键 | 功能 |
Ctrl+f | 向前翻一页 |
Ctrl+b | 向后翻一页 |
Ctrl+u | 向前翻半页 |
Ctrl+d | 向后翻半页 |
5. 行间快速跳转
命令 | 功能 |
:set nu | 显示行号 |
:set nonu | 取消显示行号 |
1G | 跳转到文件的首行 |
G | 跳转到文件的末尾行 |
#G | 跳转到文件中的第#行 |
6. 进入输入模式
命令 | 功能 |
i | 在当前光标处进入插入状态 |
a | 在当前光标后进入插入状态 |
A | 光标移动到行末,进入插入状态 |
o | 在当前行的下面插入新行,移到行首,进入插入状态 |
O | 在当前行的上面插入新行,移到行首,进入插入状态 |
cw | 删除当前位置到所到单词尾的字符,进入插入状态 |
c$ | 删除当前位置到行尾的字符,进入插入状态 |
c^ | 删除光标之前到行首的全部字符,进入插入状态 |
7. 删除操作
命令 | 功能 |
x | 删除光标处的单个字符 |
dd | 删除光标所在行 |
dw | 删除当前字符到单词尾(含空格)的所有字符 |
de | 删除当前字符到单词尾(不含空格)的所有字符 |
d$ | 删除当前字符到行尾的所有字符 |
d^ | 删除当前字符到行首的所有字符 |
J | 删除所在行的换行符,即当前行与下一行合并 |
u | 取消最近一次操作,并恢复操作 |
U | 取消当前行的所有操作 |
Ctrl+r | 对使用u命令撤销的操作进行恢复 |
8. 复制与粘贴操作
命令 | 功能 |
yy | 复制当前行整行的内容到vi缓冲区 |
yw | 复制当前光标到单词尾字符的内容到缓冲区 |
y$ | 复制当前光标到行尾的内容到缓冲区 |
y^ | 复制当前光标到行首的内容到缓冲区 |
p | 读取缓冲区内容,并粘贴 |
9. 字符串查找操作
命令 | 功能 |
/字符 | 从上到下在文件中查找字符串 |
?字符 | 从下到上在文件中查找字符串 |
n | 定位下一个匹配的字符串 |
N | 定位上一个匹配的字符串 |
10. 字符串替换
命令 | 功能 |
:s /old/new | 将从当前行中查找到的第一个字符串“old”替换为“new” |
:s /old/new/ g | 将从当前行中查找到的所有字符串“old”替换为“new” |
:#,#s/old/new/g | 在行号“#,#”范围内替换所有字符串“old”为“new” |
:%s/old/new/g | 将整个文件范围内替换所有的字符串“old”为“new” |
:s/old/new/c | 在替换命令末尾加c,将对每个替换操作进行提示确认 |
11. 对文件操作
命令 | 功能 |
:args | 显示多文件信息 |
:next | 向后切换文件 |
:prev | 向前切换文件 |
:first | 定位首文件 |
:last | 定位尾文件 |
Ctrl+^ | 快速切换到编辑器中切换前的文件 |