命令模式

启动vim时进入命令模式,输入命令而非字符

 切换到输入模式->
    从目前光标所在处输入:             i
    从目前所在行的第一个非空格符输入:  I
    从光标的下一个字符输入:           a
    从光标所在行的最后一个字符输入:    A
    在光标所在行的下一行输入新的一行:  o
    在光标所在行的上一行输入新的一行:  O

  切换到取代模式->
    取代光标所在的字符一次:           r
    一直取代光标所在的文字(esc退出):   R

   删除光标所在的字符:  x
   光标左移一个字符:    h
   光标下移一个字符:    j
   光标上移一个字符:    k
   光标右移一个字符:    l

   组合键->
      向下移动30行:    30j
      屏幕下移半页:     ctrl+d
      屏幕上移半页:     ctrl+u
      右移到指定字符:    n<space>
      移动到最后一行:    G
      移动到第n行:       nG
      移动到第一行:      gg
      向下移动n行:       n<enter>

      光标下寻找一个word的字符串:  /word
      光标上寻找一个word的字符串:  ?word
      重复上一个搜索动作:          n
      反向进行前一个搜索动作:      N

 使用例子->
    1.在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD------:100,200s/vbird/VBIRD/g
    2.从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2------:1,$s/word1/word2/g

      删除字符: x--向后删除一个字符;X--向前删除一个字符
      连续向后删除n个字符:    nx
      删除游标所在的一整行:   dd
      删除光标所在的向下n行:  ndd
      删除光标所在到第一行的所有数据:   d1G
      删除光标所在到最后一行的所有数据: dG
      删除光标所在到该行最后一个字符:   d$
      删除光标所在到该行开头一个字符:   d0
      复制游标所在的那一行:            yy
      复制光标所在向下n行:             nyy
      复制游标所在行到第一行的所有数据: y1G
      复制游标所在行到最后一行的数据:   yG
      复制游标所在到行首数据:          y0
      复制光标所在到行尾数据:          y$
      粘贴到行:p--将复制的数据贴在光标下一行;P贴在游标上一行
      将光标所在行与下一行数据结成同一行:J
      重复前一个动作:                  c
      复原前一个动作:                  u
      重做上一个动作:                  ctrl+r

输入模式

特殊的

 切换光标为输入/替换---竖线/下划线 :  insert
 退出输入模式,切换到命令模式 :       esc

底线命令模式

命令模式按 : 进入底线模式

 退出程序: q
 保存文件: w
 将编辑的数据存储成另一个档案(另存新文件):w[filename]
 将另外文档的内容加到游标后:   r[filename]
 将n1到n2的内容存成filename文件: n1,n2 w[filename]
 暂时离开vi到命令行模式下执行command的命令结果: !command  ------[! ls /home]
 显示行号:      set nu
 取消行号:      set nonu

推荐阅读:
VIM学习