vim的三种工作模式
     命令模式:用于对文章内容的操作,如复制、粘贴、删除、光标定位等。
     编辑模式:用于编写文件。
     末行模式:用于保存文件、读写文件、复制、粘贴、光标定位、vim参数设置等。
各个模式之间的切换
     命令模式-->编辑模式:输入i/I,a/A,o/O
     编辑模式-->命令模式:直接按esc键返回
     命令模式-->末行模式:输入“:”,“/”,“?”
     末行模式-->命令模式:直接按esc键返回
     编辑模式-->末行模式:没有直接进入命令,需通过命令模式中转。
     末行模式-->编辑模式:没有直接进入命令,需通过命令模式中转。
复制:
  yy:复制光标所在的行
  nyy:复制从光标所在行算起的n行,5yy
  :1,5 co 10  将1到5行的所有内容,复制到第10行。
删除
  dd:删除光标所在的行
  ndd:nyy一样。
  dG:删除从当前光标起到文件的末尾的所有内容。
  d0:删除从光标所在处开始到本行的行首的所有内容。
  d$:删除从光标所在处开始到本行的行尾的所有内容。
  x/X:向后删除一个字符/向前删除一个字符。
  delete键:向后删除一个字符。
  dw,d3w,d10w:删除一个字/向后删除3个字/向后删除10个字。
 :1,5 d:删除第1行到第5行的所有内容。
移动/剪切
    先删除,再粘贴。(dd)-->p/P
  :1,5 mo 10  将第1行到第5行的所有内容,移到第10行的下一行。
粘贴
  p:粘贴到光标所在行的下一行。
  P:粘贴到光标所在行的上一行。
撤消
  u:撤消上一次的操作,或上上次的操作,直到还原为初始状态。
替换
  r/R
  :1,10s /old/new/  在第1行到第10行这个范围内进行替换,只替换每一行的第一个old。
  :1,10s /old/new/g  在第1行到第10行这个范围内进行全部替换。
  :%s /old/new/g    进行全文替换。
  :%s #old#new#g    进行全文替换。分隔符可以是/ # ,
  :%s ,old,new,g    进行全文替换。
  :%s /^/#/g
  :%s /$/#/g
  :%s #\\#\/#g      将\替换成/
  :%s /#/$/g        
保存
  :w    :1,12w /root/filename  另存为
  :wq   :wq!                   保存退出
  :x                           保存退出
  ZZ                           保存退出
退出
  :q:不修改退出。
  :q!:强制退出,但不保存。
读文件
  :r ~/filename    读一个文件
  :r !ls -l        将ls -l命令查果,读到文件中。
  :19 r aa.txt    将aa.txt文件,读到19行的下面
执行shell命令
  :! ls -l        执行shell命令。
打开某个文件
  :e /etc/filename  打个/etc/filename文件。
查找
  /char   ?char    /从上往下,?从下往上。
  n/N   继续查找。
vim的配置
  :set nu    设置行号,把行号打开。
  :set nonu  关闭行号。
  :set noh   关闭高亮度显示。
配置vim的文件
  ~/.vimrc
  /etc/vim/vimrc

在vim里,末行命令分由地址段+命令+参数或选项或地址组成。