首先,记住vi编辑器的两个模式:1命令模式 2编辑模式 
  在一个UNIX/Linuxshell命令或者一个以斜杠(/)、问号(?)或冒号(:)开始的vi命令后面用户需要键入回车键,而要切换到vi命令模式需要按Esc键。注意,以冒号(:)或者斜杠(/ 开始的vi命令会显示在屏幕底部,但其他命令都不会显示在屏幕上。
 
  打开、写入和关闭文件(使用Enter键)
  vi file       打开文件名为file的文件(UNIX shell命令)
  :w        将工作缓冲区的变化写入默认文件中
  :w file       将工作缓冲区的变化写入名为file的文件中
  :q         退出vi编辑器
  :wq        将工作缓冲区的变化写入文件并退出
  :q!        不将工作缓冲区的变化写入文件并退出vi编辑器 
 
   插入文本(vi命令模式下使用)
  a        在当前光标位置的右边添加文本
  i        在当前光标的左边插入文本
  A        在当前行的末尾添加文本
   I        在当前行的开始出添加文本
  O        在当前行的上面新建一行
  o        在当前行的下面新建一行
  R        替换(覆盖)当前光标位置以及以后的若干文本
  J         连接光标所在行以及下一行,成为一行
 
  移动光标
  上下左右方向键     向箭头所示方向移动光标一个位置
  h            向左
  j            向下
  k            向上
  l            向右
  空格键          向右
  Backspace        向左
  Enter          向下移动到下一行的行首
  -(连字符键)      向上移动到上一行的行首
 
  纠正错误(vi命令模式下使用)
  x        删除一个字符
  dd        删除当前行
  ndd       上除当前行在内的n
  u        撤销上一次操作(最后一步)
  U        撤销对当前行的所有操作
 
  拼写检查(UNIX shell命令)
  spell file       显示问及那file中到的拼写错误
  ispell file       显示问及那file中到的拼写错误
 
  搜索(vi命令模式下使用)
  /word      向前搜索第一个出现的word
  /        继续向前搜索下一个word
  ?word      向后搜索第一个出现的word 
   ?        继续向后搜索下一个word 
 
  跳跃到指定行(vi命令模式使用)
  n+      向前(向下)跳跃n
linux vi命令详解菜鸟教学
  n-      向后(向上)跳跃n
  nG      跳跃到行号为n的行,GGo
  G      跳跃到文件的底部
 
  设置行号(vi命令模式下使用)
  :set nu      在屏幕上显示行号
  :set nonu     取消行号
 
  复制和粘贴(vi命令模式下使用)
  "knyy      复制n行到缓冲区"k
  "kp       将缓冲区"k的内容粘贴到当前行的下面
 
  全局替换文本(vi命令模式下使用)
  :%s/old/new/g      用new替换文件中的所有oldssubstitution,替换的意思。gglobal
 
  编辑另一个文件(vi命令模式下使用)
  :e otherfile      编辑文件名为otherfile的文件
 
  为命令行编辑制定一个编辑器(UNIX shell命令)
  bindkey -v      指定vi编辑器(用于 tcsh 
    VISUAL=vi      指定vi编辑器(用于 ksh
  set -o vi        指定vi编辑器(用于 bash
 
  缓冲区: 
  前面讲过,vi编辑器设计上是对工作缓冲区的文件副本进行编辑。在使用vi编辑器的时候,用户还可以访问其他缓冲区。总共有36个缓冲区。
  未命名缓冲区
  已命名缓冲区 "a"b"c…… "z 
    已编号缓冲区 "1"2"3…… "9
  未命名缓冲区有时也叫做一般缓冲区。在修改文本时,旧文本并没有被立刻删除。vi将旧文本放在未命名缓冲区直到用户删除修改更多的文本。这样就可以实现撤  销,具体命令为 u。因为vi只有一个未命名缓冲区,所以只能撤销一次。 
 
  命令模式和编辑模式的切换:
    如果不清楚当前所在的模式,可以连续按2Esc键盘,主机会发出警报声,这样就肯定进入了命令模式。在命令模式下面,输入a A i I O o R都会进入编辑模式。所输入的这单个字符不会显示,也不会插入到文件中。 
 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。