VI快捷键必知必会
i 光标前插入
a 光标后插入
I 行首插入
A 行尾插入
O 行前插入
o 行后插入
x 保存退出
wq 保存退出
G 跳到文件最后一行行首 Shift + g
gg 跳到文件第一行行首
:s/abc/cde 替换当前行每一个
:s/abc/cde/g 替换当前行所有
:%s/vivian/sky/g 替换所有行所有
dG 全选删除
dd 删除当前行
gg12 跳转到12行
:1 跳到第一行
:$ 跳到文件最后一行
:0或:1 跳到文件第一行
:0或:1 跳到文件第一行
x 删除当前光标下的字符
dw 删除光标之后的单词剩余部分。
d$ 删除光标之后的该行剩余部分。
c 功能和d相同,区别在于完成删除操作后进入INSERT MODE
cc 也是删除当前行,然后进入INSERT MODE
删除每行第一个字符 :%s/^.//g
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky
:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/