- vi是最强大的文本编辑器,没有之一。Vim 是 Vi 的改进版,由 Bram Moolenaar 在 1991 年发布。Vim 保持了对 Vi 的向后兼容,意味着大部分在 Vi 中可以使用的命令和操作在 Vim 中也能使用。
1、创建/打开文件
vi 文件名
打开一个文件,如果文件不存在,就创建它。
示例:
vi abc.txt
or
vim abc.txt
2、vi的两种模式
- vi 有两种模式,命令模式和编辑模式,在命令模式下,键盘输入是命令,在编辑模式下,键盘输入的才是字符。
进入vi时,初始是命令模式。
3、vi的常用命令
k 类似方向键上。
j 类似方向键下。
h 类似方向键左。
l 类是方向键右。
i 在光标所在位置前面开始插入。从命令模式切换到编辑模式。
a 在光标所在的位置后面开始插入。从命令模式切换到编辑模式。
o 在光标所在位置的下面插入空白行。从命令模式切换到编辑模式。
O 在光标所在位置的上面插入空白行。从命令模式切换到编辑模式。
I 在光标所在位置的行首开始插入。从命令模式切换到编辑模式。
A 在光标所在位置的行末开始插入。从命令模式切换到编辑模式。
Esc 从编辑模式切换到命令模式。
Ctrl+u 上翻半页。
Ctrl+d 下翻半页。
Ctrl+insert 相当于Ctrl+c。
Shift+insert 相当于Ctrl+v。
以上两个命令在windows和UNIX中是通用的。Ctrl+g 显示光标所在位置的行号和文件的总行数。
nG 光标跳到文件的第n行的行首。
G 光标跳到文件最后一行。
:5回车 光标跳到第5行。
:n回车 光标跳到第n行。
0 光标跳到当前行的行首。
$ 光标跳到当前行的行尾。
w 光标跳到下个单词的开头。
b 光标跳到上个单词的开头。
e 光标跳到本单词的尾部。
x 每按一次,删除光标所在位置的一个字符。
nx 如"3x"表示删除光标所在位置开始的3个字符。
dw 删除光标所在位置到本单词结尾的字符。
D 删除本行光标所在位置后面全部的内容。
dd 删除光标所在位置的一行。
ndd 如"3dd"表示删除光标所在位置开始的3行。
yy 将光标所在位置的一行复制到缓冲区。
nyy 将光标所在位置的n行复制到缓冲区。
p 将缓冲区里的内容粘贴到光标所在位置。
r 替换光标所在位置的一个字符。
R 从光标所在位置开始替换,直到按下Esc。
cw 从光标所在位置开始替换单词,直到按下Esc。
u 撤销命令,可多次撤销。
J 把当前行的下一行文本拼接到当前行的尾部。
/abcd 在当前打开的文件中查找文本内容“abcd”。
- n 查找下一个。
- N 查找上一下。
. 重复执行上一次执行的vi命令。
~ 对光标当前所在的位置的字符进行大小写转换。
:w回车 存盘。
:w!回车 强制存盘。
:wq回车 存盘退出。 write and quit
:w 文件名 把当前文件另存为……
:x回车 存盘退出。
:q回车 不存盘退出。
:q!回车 不存盘强制退出。
:g/aaaaaaaaa/s//bbbbbb/g回车 把文件中全部的aaaaaaaaa替换成bbbbbb。
vi .cpp .h 打开全部后缀为.cpp和.h的文件。
:n 切换到下一个文件。