Linux Vim常用快捷键
服务器上操作,经常要用vim查看编辑文件内容,不懂快捷键导致效率很低,于是就查阅网络资料总结了一下vim常用的快捷键。
1、删除
x 小写的 x 表示向后删除一个字符,也就是删除光标所在的字符
nx 表示向后删除 n 个字符
X 大写的 X 表示向前删除一个字符,即光标前的一个字符,不包括光标所在字符
nX 表示向前删除 n 个字符
2、复制
yy 复制光标所在的行
nyy 复制光标所在的向下 n 行
y1G 复制光标所在的行到第一行数据
yG 复制光标所在的行到最后一行数据
y0 复制光标所在的位置到该行第一个字符
y$ 复制光标所在的位置到该行最后一个字符
3、剪切
dd 剪切当前行
ndd 剪切 n 行
dw 从光标处剪切到一个单词的末尾,包括空格
de 从光标处剪切打一个单词的末尾,不包括空格
d$ 从当前光标处剪切到行末
d0 从当前光标处(不包括光标位置)剪切到行首
dH 剪切当前行到所显示屏幕顶行的全部行
dM 剪切当前行到命令M所指定行的全部行
dL 剪切当前行到所显示屏幕底的全部行
4、粘贴
p 小写p表示将已经复制的数据粘贴到光标的下一行
P 大写P表示将已经复制的数据粘贴到光标的上一行
5、插入
i 小写的 i 表示在光标前插入
I 大写的 I 表示在行首插入
a 小写的 a 表示在光标后插入
A 大写的 A 表示在行末插入
o 小写的 o 表示在当前行的下面另起一行,并变为插入模式
O 大写的 O 表示在当前行的上面另起一行,并变为插入模式
6、移动
fx 向右跳到本行字符 x 右处(x可以是任意字符)
Fx 向左跳到本行字符 x 左处
tx 向右跳到本行字符 x 左处
Tx 向左跳到本行字符 x 右处
# 到与当前单词相同的上一个单词上
* 到与当前单词相同的下一个单词上
' 移动到上一次修改行
b 向前移动
nb 向前移动 n 个单词(标点也算一个单词,相应的大写状态为不含标点,即只把空格和换行符作为单词间隔符)
w 向后移动
nw 向后移动 n 个单词
$ 移动到行尾
n$ 移动到 n 行尾
^ 移动到行首,0 也是
+ 移动到下一行的行首
— 移动到上一行的行首
gg 文件头
G 文件末尾
n% 跳转到文件的 n% 处
H(Home)、M(Middle)、L(Last),当前屏幕的上中下位置,不区分大小写
Ctrl+G 显示当前位置
Ctrl+u\d 向上\向下滚动半屏
Ctrl+e\y 向上\向下滚动一行
Ctrl+b\f 向上\向下滚动一屏
zz 将当前行滚动与屏幕中间,方便查看上下文
zt 置顶
zb 置尾
7、其它
J 大写J表示将光标所在的行与下一行的数据合并为一行
nJ 合并光标所在的行开始后面的 n 行
u 小写u表示撤销上一步操作
ctrl+r 与u相反,表示重做前一步操作
. 点,表示重复前一个操作,例如:想多次复制,一直按这个点就可以了
set number 显示行号
set nonumber 关闭显示
注:以上操作均是在非编辑模式下进行