Linux vim 编辑器

来源:互联网 发布:b2b网络营销 知乎 编辑:程序博客网 时间:2024/04/29 15:27

A、vim 常用模式:
1、编辑模式(命令模式) 编辑整个文档
2、输入模式
3、末行模式


B、模式转换:
编辑-->输入
  i:    在当前光标所在字符的前面,转为输入模式【insert】
  a:    在当前光标所在字符的后面,转为输入模式【append】
  o:    在当前光标所在行的下面,新建一行,转为输入模式

  I:    在当前光标所在行的行首,转为输入模式
  A:    在当前光标所在行的行尾,转为输入模式
  O:    在当前光标所在行的上面,新建一行,转为输入模式


输入-->编辑
  ESC 键,可以多敲几下

编辑-->末行 【输入模式不能进入末行模式】
  输入 ":"
  :set nu     显示行号
  :9d     删除文件第9行
  :3,6d     删除3-6行
  :! ls /etc/     显示目录 /etc/ 下的文件信息,按其他按钮回到当前页面【执行shell命令】

末行-->编辑
  ESC 键,如果在末行模式有输入内容,那么可能会按多次ESC键



一、打开文件
  打开文件或者新建文件
  # vim /path/somefile 
  打开文件,定位行号
  # vim +12 /etc/inittab 打开文件,光标处于12行
  # vim + /etc/inittab 打开文件,光标处于最后一行
  # vim +/tion inittab 打开文件,定位至第一次被PATTERN匹配到的行首 【vim +/PATTERN 】
  默认处于编辑模式


二、关闭文件
  1、末行模式关闭文件
    :w   保存,单独保存
    :q 退出,但不会保存编辑内容
    :q! 不保存退出
    :w! 对只读文件强行保存,【只对管理员有效】
    :wq或者:x 保存并退出
  ZZ 保存并退出【不用切换到末行模式*******】




三、移动光标(编辑模式)
  1、逐字符移动:

    h 向左
    l 向右
    j 向下
    k 向上
  #h #l #j #k   向对应方向移动#个字符【#代表数字】


  2、以单词为单位移动
    w 跳至下一个单词的词首
    e 跳至当前或下一个单词的词尾
    b 跳至当前或前一个单词的词首
  #w  #e  #b 向对应方向移动#个单词【#代表数字】


  3、行内跳转
    0  或者Home键 绝对行首【不算制表符】
    ^ 行内的第一个非空白字符
    $或者End 绝对行尾【算制表符】

  4、行间跳转
    #G或者#gg   跳转至#行

    gg  跳至第一行
    G 跳至最后一行
    :#跳转至#行【末行模式下******】




四、翻屏
  Ctrl+f 向下翻一屏       【或者 PgDn】
  Ctrl+b 向上翻一屏      【或者 PgUp】


  Ctrl+u 向上翻半屏
  Ctrl+d 向下翻半屏




五、删除单个字符(编辑模式)
  x 删除光标所在处的单个字符
  #x 删除光标所在处及向后的共#字符


六、删除命令:   d
  d   命令要和跳转命令组合使用
  #d跳转符 删除多少个跳转符
  #dw  #de #db


  dd 删除光标所在行
  #dd 删除光标所在行之内的#行

  d+$或者d+End    删除当前行光标所在位置到行尾的内容
  d+^或者d+0或者d+Home  删除当前光标所在位置到行首的内容

  末行模式:
  . 表示当前行
  $ 最后一行
  +# 向下#行
  $-10   最后一行减去10行
  :10,20d 删除10-20行
  :.,+5d 删除当前行,及向下5行【共6行】
  :.,100d 删除当前行,到100行
  :.,$-3d 删除当前行到倒数第3行




七、粘贴命令: p
  p 如果删除或复制为整行内容,则粘贴到光标所在行的下方;如果复制或删除的内容为非整行,则粘贴至所在字符的后面
  P 如果删除或复制为整行内容,则粘贴到光标所在行的上方;如果复制或删除的内容为非整行,则粘贴至所在字符的前面




八、复制命令: y
  用法同d命令
  yy 复制一行
  3yy 复制3行内容
  …… 其他的不用说了




九、先删除内容,再转为输入模式  c
  c 用法同d命令




十、替换【编辑模式】 r 【经常用于替换单个字符】
  r字符 先敲r ,然后敲其他键,则当前光标字符替换为你所敲的字符
  R 进入替换模式




十一、撤销编辑操作 u
  注意:vi 编辑器中最多保持最近50次的编辑操作,也就是说最多可以撤销50次
  u 撤销前一次的编辑操作【可以连续使用】
  #u 撤销最近#次编辑操作


    ☆☆☆☆☆ 撤销【还原】最近一次的撤销操作:Ctrl+r




十二、重复前一次的编辑操作
    .
重复上次的操作




十三、可视化模式
  v 按字符选取【选中一行中的一些字符】
  V 按矩形块选取【选中正行】




十四、查找
  /PATTERN 向下查询
  ?PATTERN 向上查找
  n 先一个
  N 上一个




十五、查找并替换【末行模式
ADDR1,ADDR2s@PATTERN@string@gi g 全局替换 i 忽略大小写

【如:10,$s@con@QQQ@g 第10行到最后一行,从con替换为QQQ,全局替换】



0 0