光标移动: h 左移
j 下移
k 上移
l 右移
^ 光标移动到行首
$ 光标移动到行尾
删除: x 删除一个字符
dw 删除从光标位置开始的一个单词,包括空格
de 删除从光标位置开始的一个单词,不包括空格
d$ 删除从光标处到行尾的所有字符
dd 删除光标所在的行
#dd 删除从光标位置开始的#行(#为数字)
撤销: u 撤销上一次操作
Ctrl+r 恢复撤销
剪切: p 将最后一次删除的内容粘贴到光标之后
替换 r 将光标移动到要替换的字符处,输入r,再输入要替换的字符,完成替换(只能替换单个字符)
R 将光标移动到要替换的字符处,输入R,此时变为替换模式,输入的所有字符都将被替换,直达按下ESC键后退出
更改: cw 将光标移动到要替换的字符处,输入cw,光标所在的位置开始的第一个单词删除,此时进入输入模式,可以输入任意内容,输入完成后按ESC退出
c$ 将光标移动到要替换的字符处,输入c$,光标所在位置开始到行尾全部删除,此时进入输入模式,可以输入任意内容,输入完成后按ESC退出
:s/OLD_WORD/NEW_WORD
替换OLD_WORD为NEW_WORD,此处仅替换光标所在行当中第一个被OLD_WORD匹配到的词
:s/OLD_WORD/NEW_WORD/g
替换OLD_WORD为NEW_WORD,此处仅替换光标所在行当中全部被OLD_WORD匹配到的词
:#s/OLD_WORD/NEW_WORD/g
替换OLD_WORD为NEW_WORD,此处仅替换光标所在行开始的#行当中全部被OLD_WORD匹配到的词(#为数字)
:%s/OLD_WORD/NEW_WORD/g
替换OLD_WORD为NEW_WORD,此处替换全部文档中被OLD_WORD匹配到的词
:%s/OLD_WORD/NEW_WORD/gc
替换OLD_WORD为NEW_WORD,此处替换全部文档中被OLD_WORD匹配到的词,并对每个要替换的词进行提示
定位: Ctrl+g 在屏幕的最下方显示文件名,当前所在的行/全部行,当前所在的列等信息
G 跳转到最后一行
#G 跳转到第#行(#为数字)
搜索: / 正向搜索
? 反向搜索
n 查找下一个
N 查找上一个
% 查找对应的括号,如() [] {}
执行外部命令:
:!COMMAND
输入完成后,按回车,即可在vim之外执行相关命令,执行完成后再按回车,返回vim中
另存为: :w FILENAME
将当前文件另存为FILENAME文件
:#,# w FILENAME
将当前文件中的第#行到第#行的内容另存为FILENAME文件(#为数字)
文件插入: :r FILENAME
将FILENAME文件中的内容全部插入到当前文件中,插入的位置为当前光标所在位置
输入模式: i 在光标所在位置插入
a 在光标所在位置后插入
o 在光标所在行的下一行插入
I 在光标所在行的行首插入
A 在光标所在行的行尾插入
O 在光标所在行的上一行插入
来源:https://www.cnblogs.com/super2279/p/11583851.html