1. [A | a] : (Append)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符
2. [I | i] : (Insert)进入编辑状态,从当前光标之后的位置开始插入键盘输入的字符
3. [O | o] : (Open)进入编辑状态,并插入一新行,光标移到该新行的行首,以后键盘输入的字符将插入到光标位置
4. ESC : 进入命令状态
5. [N]x : (Expurgate)删除从光标位置开始的连续N个字符(并复制到编辑缓冲区)
6. [N]dd : (Delete)删除从光标位置开始的连续N行(并复制到编辑缓冲区)
7. [N]yy: (Yank)复制从光标位置开始的连续N行到编辑缓冲区
8. p或P: (Put)从编辑缓冲区复制文本到当前光标位置(即粘贴)
9. u : (Undo)取消上一次操作(即恢复功能)
10. h: 方向键,向左移动光标一个字符的位置,相当于键“←”
11. j: 方向键,向下移动光标到下一行的位置,相当于键“↓
12. k: 方向键,向上移动光标到上一行的位置,相当于键“↑”
13. l : 方向键,向右移动光标一个字符的位置,相当于键“→”
14. :N : 移动光标到第N行(N待定)
15. 1G: 移动光标到文件的第1行
16. G: 移动光标到文件的最后1行
vi的查找命令
/string 查找字符串
n 继续查找
N 反向继续查找
支持正则表达式比如:/^the /end$
vi替换命令
利用:s 命令可以实现字符串的替换。
:s/str1/str2/
:s/str1/str2/g
:.,$ s/str1/str2/g g全部替换(默认换第1个)
:1,$ s/str1/str2/g
:%s/str1/str2/g
vi复制和剪切命令
y0-将光标至行首的字符拷入剪贴板
y$-将光标至行尾的字符拷入剪贴板
d0-将光标至行首的字符剪切入剪贴板
d$-将光标至行尾的字符剪切入剪贴板
range y-块复制
range d-块剪切