vi编辑器的使用

1、vi的三种模式

   Command Mode/命令行模式、Entry Mode/插入模式和Last-line Mode/底行模式

 

 

2、vi命令模式功能键

(1)插入操作

①  i  在当前光标位置插入

②  I  在当前光标所在行的行首插入

③  a  在当前光标位置的后一个字符插入

④  A  在当前光标所在行的行尾插入

⑤  o  在当前光标所在行下新建一行插入

⑥  O  在当前光标所在行上面新建一行插入

 

(2)光标移动

H

 ↓ 

J

↑ 

K

L

②  G  移到文件尾

     gg  移到行首

     nG 或ngg 光标定位到第n行

③   f  移动到光标右边的指定字符上,如fx,会定到右边第一个‘x’字符上

     F  移动到光标左边的指定字符上

     t  移动到光标右边的指定字符之前

     T  移动到光标左边的指定字符之前

④  0或^  光标定位到行首

⑤  $  光标定位到行尾

⑦  w  光标向右移一个单词,光标定到首字符

     e  光标定到尾字符

     b  光标定到单词首字符

⑧  n  跳到当前下n行

⑨  :n 光标定位到第n行 (ps:底行模式下)

     空格n  光标定位到第n行

⑩  Ctrl + b  屏幕往后翻动一页

    Ctrl + f  屏幕往前翻动一页

    Ctrl + u  屏幕往后翻动半页

    Ctrl + d  屏幕往前翻动半页

 

(3)修改操作

①  r  替换一个字符

②  cw 替换一个单词

③  cc 替换一行

④  C  替换从光标至行尾

 

(4)删除操作

①  x  删除一个字符

②  dw 删除当前词

③  ndw 删除n个词

④  dd 删除当前行

⑤  ndd 删除n行

⑥  :m,nd  删除从第m行到第n行

        ps:删除后的字符放在剪贴板上,可以用p/P粘贴。

⑦  D  删除到行尾

⑧  dtc  当前行上删除到下一次出现的c字符的前一字符

    dfc  当前行上删除到下一次出现的c字符

   

(5)拷贝操作

①  yw  拷贝词

②  nyy或nY  拷贝n行

③  :1,4cos3  拷贝从行1至行4在行3之后

④  :4,6m7    移动从行4至行6在行7之后

 

(6)粘贴操作

①  p  当前行下粘贴一行 或 当前光标后一字符粘贴一词

②  P  当前行上粘贴一行 或 当前光标处粘贴一词

(7)撤销操作

①  u  撤销

②  U  撤销到上一次的操作

(8)查找操作

①  #   高亮显示当前光标处词

3、vi底行模式功能键

  (1):w [newname] 保存 [到新文件]

  (2):q   退出

  (3):q!  强制退出,不做保存

  (4):wq 或 :x或 shift + zz  保存退出

  (5)/string  向下查找匹配字符串

       ?string  向上查找匹配字符串

       n 重复刚才同样的搜索

       N 以相反的方向,重复刚才同样的搜索

  (6)set nu/nonu 显示/取消行号

  (7)set ts=4  设置tab长度

  (8)noh  去高亮显示状态

  (9)ctrl + z 挂起vi;  fg  打开挂起的vi

 

4、快捷键

(1)shift 5 找到对应括号关系

(2)shift 8 找到所有光标处所指定的字符并加高亮

(3)gg=G  从首行到底行缩进

       n==  光标所在行起n行缩进

(4),$s/hello/helen/g   从光标处开始hello替换为helen

       1,$s/hello/helen/g  第一行开始全部替换

       %$s/hello/hellen/g  全部替换

原文地址:https://www.cnblogs.com/onetaste/p/vi.html