=============================================================================
vi/vim命令复习和练习:
---------------------------------------
命令模式
yy 复制光标所在的这一行的内容
4yy 复制光标所在的这一行开始向下4行的内容
p 粘贴
dd 删除/剪切光标所在的这一行的内容
2dd 删除/剪切光标所在的这一行开始向下2行的内容
D 从当前的光标开始删除/剪切,一直到行末
d0 从当前的光标开始删除/剪切,一直到行首
x 删除/剪切当前的光标,每次只会删除/剪切一个(向右删)
X 删除/剪切当前的光标前面的那个,每次只会删除/剪切一个(向左删)
dw 删除/剪切一个单词
---------------------------------------
h 向左
j 向下
k 向上
l 向右
---------------------------------------
H 当前屏幕的上方
M 当前屏幕的中间
L 当前屏幕的下方
---------------------------------------
Ctrl+f 向下翻一页
Ctrl+b 向上翻一页
---------------------------------------
20G 快速定位到第20行代码
G 快速定位到最后一行代码
gg 快速定位到第一行代码
---------------------------------------
w 向后跳一个单词的长度
b 向前跳一个单词的长度
---------------------------------------
u 撤销刚刚的操作
Ctrl+r 反撤销
---------------------------------------
v+↑/↓ 选中一片区域(光标到哪,区域到哪)
V+↑/↓ 选中一片区域(整行整行的区域)
>> 整体向右移动代码
<< 整体向左移动代码
---------------------------------------
. 重复执行上一次的命令
---------------------------------------
{ 按段移动,上移
} 按断移动,下移
---------------------------------------
r 替换一个字符
R 替换当前光标后的字符
---------------------------------------
/haha 查找haha出现的地方,以黄色背景显示
/hhhh 查找不存在的字符即可
n 下一个
N 上一个
---------------------------------------
Shift+zz 保存并退出编辑
---------------------------------------
末行模式
:w 保存编辑
:q 退出编辑
:wq 存并退出编辑
:q! 不保存退出编辑
---------------------------------------
末行模式
:%s/hello/world/g 将所有行的hello替换成world
:11,16s/hello/world/g 将11行和16行的hello替换成world
=====================================================================