Vim基本使用方法
- Vim键盘图
- Vim三种模式
- 命令模式
进入Vim的初始模式,此模式下的输入被Vim识别为命令。 - 编辑模式
在命令模式输入i
进入输入模式,进行文本编辑。按ESC返回命令模式。 - 命令行模式
在命令模式按:
进入命令行模式,命令以回车结束运行。
- 命令模式
- 命令模式的使用
- 移动光标
- 移动(字符)
- 上:
h ↑
- 下:
j ↓
- 左:
k ←
- 右:
l →
- 上:
- 移动(页)
- 下移一页:
Ctrl + f Page Down
- 上移一页:
Ctrl + b Page Up
- 下移半页:
Ctrl + d
- 上移半页:
Ctrl + u
- 下移一页:
- 移动(行)
- 上一行:
+
- 下一行:
-
- 上一行:
- 移动(特殊位置)
- 移动到本行第一个字符:
0 Home
- 移动到本行最后一个字符:
$ End
- 移动到屏幕最上方那一行的第一个字符:
H
- 移动到屏幕中间那一行的第一个字符:
M
- 移动到屏幕最下方那一行的第一个字符:
L
- 移动到最后一行:
G
- 移动到第一行:
gg
- 移动到本行第一个字符:
- 移动(字符)
- 查找替换
- 查找
- 向上查找字符串:
/word
- 向下查找字符串:
?word
- 重复前一个搜索:
n
- 方向重复前一个搜索:
N
- 向上查找字符串:
- 替换
:1,$s/word1/word2/gc
或%s/word1/word2/gc
:从第一行到最后一行寻找 word1 字符串,并将该字符串替换为 word2 ,替换前需要确认。:1,$s/word1/word2/g
或:%s/word1/word2/g
:从第一行到最后一行寻找 word1 字符串,并将该字符串替换为 word2 。:n1,n2s/word1/word2/g
:在第 n1 与 n2 行之间寻找 word1 字符串,并将该字符串替换为 word2 。
- 查找
- 删除复制粘贴
- 删除
x, X
:向后/前删除一个字符nx
:向后删除n个字符dd
:剪切当前行ndd
:剪切向下n行dG
:删除光标到最后一行的数据d1G
:删除光标到第一行的数据d$
:删除光标到本行最后一个字符d0
:删除光标到本行的第一个字符
- 复制
yy
:复制当前行nyy
:向下复制n行y1G
:复制当前行到第一行的数据yG
:复制当前行到最后一行数据y$
:复制光标到本行最后一个字符y0
:复制光标到本行第一个字符:line1,line2y
:复制line1到line2行的数据
- 粘贴
p
:在光标下一行粘贴P
:在光标的上一行粘贴J
:将光标所在行与下一行的数据结合成同一行
- 还原
c
:重复删除多个数据,如10cj,向下删除10行u
:复原前一个动作Ctrl + r 或 .
:重复前一个动作
- 删除
- 移动光标
- 编辑模式
i,I
:进入编辑模式,i :从光标所在处输入, I: 从目前所在行的第一个非空格符处开始输入a,A
:进入编辑模式,a :从光标所在的下一个字符处开始输入, A :从光标所在行的最后一个字符处开始输入o,O
:进入编辑模式,o :在目前光标所在的下一行处输入新的一行,O :在目前光标所在的上一行处输入新的一行Esc
:退出编辑模式
- 命令行模式
:w
:写入保存:w!
:强制写入保存:q
:退出:q! 或 ZQ
:强制退出,不保存:wq 或 ZZ
:保存退出:w filename
:另存为:r filename
:在当前行后加入filename的数据:n1,n2 w filename
:将n1到n2行的内容存到filename中
- vim环境变量设置
:set nu
:显示行号:set nonu
:取消行号
- 快捷方式
- 进入文件/目录:gf
- 回退源文件:命令输入bf
参考资料:
《菜鸟教程Linux vi/vim》