vim基本操作
命令不再多,日常够用就好啦
vim的几种模式切换
插入命令
命令 |
作用 |
a |
在光标所在字符后插入 |
A |
在光标所在行尾插入 |
i |
在光标所在字符前插入 |
I |
在所在行行首插入 |
o |
在光标下插入新行 |
O |
在光标上插入新行 |
定位命令
命令 |
作用 |
:set nu |
设置显示行号 |
:set nonu |
取消显示行号 |
gg |
到第一行 |
G |
到最后一行 |
nG |
到第n行 |
:n |
到第n行 |
$ |
到行尾 |
0或^ |
到行首 |
j |
向下移动1行 ,nj向下移动n行 |
k |
向上移动1行,nk向上移动n行 |
h/l |
向左/右移动1个字符,nh/l向左/右移动n个字符 |
删除命令
命令 |
作用 |
x |
删除光标所在处字符 |
nx |
删除光标所在处n个字符(包括光标处的) |
dd |
删除光标所在行 |
dG |
删除光标所在行到文件末尾的内容 |
D |
删除光标所在处到行尾的内容 |
:n1,n2d |
删除n1到n2行的内容 :1,3删除1到3行的内容 |
dw |
删除一个单词,光标必须在单词开始处 |
复制和剪切
命令 |
作用 |
yy |
复制当前行 |
nyy |
复制当前行以下n行(包括当前行在内) |
dd |
剪切当前行 |
ndd |
剪切当前行以下n行 |
p,P |
在当前光标所在处后,前粘贴 |
替换和取消
命令 |
作用 |
r |
取代光标所在处字符,先按r再按要替换的结果 |
R |
从光标所在处开始替换字符串,按esc结束 |
u |
撤销上一步的操作 |
vim复制一段
按v进入可视模式,光标移动到要复制的地方按l向后选取(按enter向下选取一行,G选取余下的所有文档)
进入可视模式配合相应的定位命令即可完成选取,然后按y,即可复制
l后选取,h向前选取
搜索和替换
在命令模式下 搜索指定字符串
/str 向下查找 ?str向上查找
收到时按n 到下一个出现的搜索的内容 N上一个出现的位置
替换
:%s/name/name1/g g表示全局替换
c表示带提示的替换 ,查出很多个时 ,每一个询问是否替换
在某一个区间内搜索替换
:n1,n2 s/name/name123
在n1到n2行之间把name换为name123
n为$时表示最后1行
把a.txt插入到b.txt的某个行位置后
vim b.txt
:10 r a.txt
表示将a.txt的内容插入到b.txt的第10行后
不带行号的话就是插入到当前光标位置
多个文件的编辑
vim a.txt a b.txt c.txt
:n表示进入下一个文件
:n c.txt表示进入c.txt文件
:w new_name 另存为指定文件 w!强制存为 new_name即使new_name文件存在
ZZ保存并修改退出的快捷键