1、插入命令 a(A)、i(I)、o(O)
a:在光标所在字符后插入
A:在光标所在行末尾插入
i:在光标所在字符前插入
I:在光标所在行首插入
o:在光标所在行下一行插入
O:在光标所在行上一行插入
2、定位命令
2.1 设置行号:set nu
2.2 取消行号:set nonu
2.3 到第一行:gg
2.4 到最后一行:G
2.5 到第n行: :n
2.6 到行首:0
2.7 到行尾:$
3、删除
3.1 删除光标所在处的单个字符 : x
3.2 删除光标所在处之后的n个字符(n中包含光标所在处的字符):nx
3.3 删除光标所在行: dd
3.4 删除光标所在行之后n行(n包含光标所在行):ndd
3.5 删除光标所在处到行尾的内容(包含光标所在处):D
3.6 删除光标所在行到文件末尾的内容:dG
3.7 删除范围之内的行(n1,n2之间的行): :2,4d
4、复制、剪切
4.1 复制当前行:yy
4.2 复制包含当前行之后的n行 :nyy
4.3 剪切当前行:dd
4.4 剪切包含当前行之后的n行:ndd
4.5 粘贴到光标所在行下一行:p
4.6 粘贴到光标所在行上一行 :P
5、替换、取消
5.1 替换单个字符 : r(按一下r,在按你想替换的字符)
5.2 替换多个字符:R(按一下R,在输入你想替换的多个文字,按esc结束,然后wq保存)
5.2 撤销:u
6、搜索、搜索替换
6.1 搜索某个关键字keyword:/keyword (n,下一个,区分大小写的)
6.2 搜索不区分大小写,在输入/keyword之前,先输入:set ic ,然后在输入/keyword搜索,如果想还原不区分带小些,:set noic 就可以了
6.3 全文替换字符: :%s/oldstring/newstring/g
6.4 替换n1,n2行之内的字符串: :n1,n2s/oldstring/newstring/g
7、保存、保存退出
7.1 保存不退出::w
7.2 另存为 : :w newfile_name
7.3 保存退出 : :wq
7.4 不保存退出 : :q!
7.5 保存并退出(只有root和文件所有者可以使用):wq! ,当文件所有者也没有写入权限时候,系统会提示使用wq!保存,【注】:是所有者也没有写入权限时候,只有root和所有者可以使用wq!强制保存
8、导入系统文件内容到vim编辑的内容
:r /tmp/test.txt : /tmp/test.txt内容被导入到,当前正在用vim编辑的内容所在光标处
:r !date(!+系统命令) :将日期(系统命令输出)导入到vim编辑的内容所在光标处
9、自定义快捷键map
map ctrl + v + / (ctrl + v , ctrl + /) I(到行首进入插入模式)#<ESC> // 定义 ctrl + l,注释一行
10、 给多行加注释、取消注释
n1,n2行行首加入注释::n1,n2s/^/#/g
所有内容行首加注释: :%s/^/#/g
取消n1,n2行首注释::n1,n2s/^#//g
取消所有内容行首注释::%s/^#//g
给php等这种加双斜线注释:%s/^/\/\//g
11、ab 替换
:ab my myniubi 回车
在vim中输入my,空格、tab、回车之后都会变成myniubi
12、vim默认操作,一进入vim就有的操作 (~/.vimrc)
set nu //设置行号
ab myn myniubi //替换
map ^P I#<ESC> //定义快捷键
.....