a)        Vi存在三种模式:指令模式和插入模式,底行模式
1)        命令模式:控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式。ESC:退回到指令模式。
2)        插入模式:只有在插入模式下,才可以做文字编辑,按「ESC」键回到命令模式。
3)        底行模式:将文件保存或退出vi,也可设置编辑环境,如寻找字符串、列出行号。
 
2.         指令模式:
a)        进入插入模式
1)      输入a:在当前位置之后插入字符
2)      输入A:在光标所在列最后面的地方开始新增资料
3)      输入i:在当前位置之前插入字符       insert
4)      输入I:从光标所在列的最前面非空白字前开始插入
5)      输入o:在光标所在列下一列插入行并进入插入模式          open
6)      输入O:在光标所在列上一列插入行并进入插入模式
b)        移动光标操作
1)        方向键:
h:左移
j:下移
k:上移
l:右移
# + (上面四个键或者键盘上的方向键):向对应方向移动#个字符或者段落
H:移动到视图的第一列    head
M:移动到视图的中间列    middle
L:移动到视图的最后列     last
2)        字间移动
b:移动到上一个字的第一个字母           before
w:移动到下一个字的第一个字母          walk
e:移动到下一个字的最后一个字母        end
3)        行,段落间移动
^:移动到光标所在列的一个非空白字前
$:移动到光标所在列的列尾
#-:移动到一个#列前的第一个非空字符前
#+:移动到一个#列后的第一个非空字符前
G:移动到文章末尾
#G:移动到第#
#(:移到#个句子前
#):移到#个句子后
#{:移到#个段落前
#}:移到#个段落后
4)        翻页
Ctrl+ d:向下半页   down
Ctrl+ f:向下一页    forward
Ctrl+ u:向上半页   up
Ctrl+ b:向上一页   backward
c)         删除
1)      x:删除光标所在一个字符
2)      X:删除光标所在的前面一个字符
3)      #x:删除光标所在后面的#个字符
4)      #X:删除光标所在前面#个字符
5)   dw:删除当前光标后的一个单词
6)      dd:删除光标所在的列
7)      #dd:删除光标所在行开始的#
8)      s:删除光标所在资源,并进入输入模式
9)      S:删除光标所在的列的内容,并进入输入模式 
d)        修改
1)      cw:更改光标所在处的字到字尾处
2)      c#w:更改#个字
3)      r:修改光标所在资源,按下r后,接着修改对应的字符,只能进行一次。
4)      R:进入取替换状态,新增文字会覆盖原先文字,知道按下ESC回到指令模式为止
5)      ~:改变字符的大小状态。
e)        复制
yw:复制光标所在之处到字尾的字符          yank
#yw:复制光标所在处#个字
yy:复制光标所在行
#yy:复制光标所在行开始的#
f)         粘贴
P:放置复制内容                   put
g)        恢复操作
1)        u:恢复刚才操作
h)        显示信息
1)        Ctrl+ g:列出光标所在行的行号
          
3         底行模式,命令模式下输入:进入
a)        存盘退出相关
1)      :q:直接退出,文件有新的变化,vi会提示保存文件
2)      :q!:不想保存改变后的文件,强制退出。
3)      :wq:存盘退出    (后面可接文件名)
4)      :x:存盘退出
5)      :w:保存文件                (后面可接文件名)
b)        显示信息
set  nu:列出文件中每行的行号
c)         #:跳到文件的第#
d)        ?关键字:从光标位置往前查想要的关键字,n会继续查找
e)        /关键字:从光标位置往后查想要的关键字,n会继续查找
 
补充:
#+命令:作用#