vi的使用方法:
h | 向左移动光标 |
l | 向右移动光标 |
j | 向下移动光标 |
k | 向上移动光标 |
^ | 回到第一个非空字符上 |
$ | 加到该行行尾 |
0 | 将光标移动行首 |
G | 将光标移动到文档最后一行的开头 |
nG | 交光标移动到n行的开头 |
w | 向后移动一个单词 |
nw | 向后移动n个单词 |
b | 向前移动一个单词 |
nb | 向前移动n个单词 |
e | 将光标移动到本单词的最后一个的最后一个字符,如果已处于最后一个,则移动到下一个单词的最后 |
ctrl+b | 向前翻一页 |
ctrl+f | 向下翻一页 |
ctrl+u | 向 上翻半页 |
ctrl+d | 向下翻半页 |
yy | 复制光标所在行的所有内容 |
yw | 复制光标所在位置单词的内容 |
nyy | 复制光标所在行向下的n行 |
nyw | 复制光标向 后的N个单词 |
p | 将复制的内容粘贴 |
x | 删除光标所在位置的字符 |
X | 删除光标所在位置前面的字符 |
nx | 删除光标所在位置后n-1个字符 |
nX | 删除光标所在及及向前的n-1个字符 |
dw | 删除光标所在位置的单词 |
ndw | 删除光标所在及向后的n-1个单词 |
d0 | 删除所在行光标前面的所有内容 |
d$ | 删除当前光标所在行后的所有内容 |
dd | 删除整行内容 |
ndd | 光标所在行及向下删除n-1行内容 |
nd+向上方向键 | 删除光标所在行及其向上的N行 |
nd+向下方向键 | 删除光标所在行及其向下N行 |
r | 替换光标所在位置的字符rx将光标上的字符替换为x |
R | 替换光标所到之处的字符,ESC结束 |
U | 取消当前行的所有改变 |
u | 取消上一步操作 |
. | 重复执行上一次的命令 |
ZZ | 保存文档后退出 |
i | 从光标所在位置开始插入 |
I | 从光标所在行的行首开始插入 |
a | 从光标所在位置的下一个开始插入 |
A | 从光标所在位置的行尾进行推入 |
o | 新添加一行,并将光标移动到下一行的开始插入 |
O | 在当前行的上一行添加一行新的 |
q | 退出 |
q! | 强制退出 |
w | 保存 |
w! | 强制保存,对于只读文件强制保存 |
wq | 保存并退出 |
E | 在vi中创建新文件,并可以为文件命名 |
N | 在vi中打开新的文件 |
w filename | 另存为filename文件 |
w! filename | 强制另存为 |
r filename | 读入文件内容插入到光标位置 |
set nu | 行号 |
s/pattern1/pattern2/g | 将当前行的字符pattern1f替换为pattren2 |
%s/pattern1/pattern2/g | 所有行进行替换 |
g/pattern1/s/pattern2 | 所有行进行替换 |
num1,num2 s/parrtrn1/pattern2/g | 提定行内进行替换 |
/ | 查找,向下按F,向前按N |
? | 与/相反 |