使用vimtutor命令学习vim工具

1、k上 j下 h左 l右;

2、i光标前插入,a光标后插入 ; 

3、I将光标移动行首插入,A将光标移动到行尾插入,e将光标以每个单词进行跳跃;

4、d$删除光标到行尾;

5、数字0可以将光标回到行首,$将光标移动到行尾;

6、dd命令删除整行, 2dd删除两行

7、u撤消单个,U撤消整行 Ctrl+R可以撤消到原始状态;

8、p将最后一次删除的内容输入光标之后;

9、输入r和一个字符,替换光标位置的字符为新的字符;

10、使用C更改内容,c$即从光标位置到行尾进行删除,并进入插入模式;

11、ctrl + g 显示光标所在行及文章的百分比位置;

12、G将光标移动到文档最后一行,gg将光标移动到文档第一行;500G将光标移动到500行位置;

13、/字符串,将查找文档中指定的字符串,n查找文档下方的字符串,N将查找文档反方向的字符;

14、逆向查找字符串,使用?字符命令,将查找反方向的字符串,使用ctrl+o(字母),回到之前的位置;

15、%查找配对的括号等符号,(将光标移动到首个(符号,再按%符号,光标将自动跳到对应的)上;

16、s/thee/the/将替换当前行第一个查找结果,将thee 替换为the字段,s/thee/the/g,将整行               的thee替换成the字符,100,200s/thee/the/g将替换100行到200行之间的thee为the字符,                      %s/thee/the/g,将替换整章文档的thee为the; %s/thee/the/gc,将一个一个手动确认替换。

17、set number,显示文档的行号;

18、使用!加外部命令,实现在vim中执行命令;

19、w filename ,将在写文档保存为filename文档;

20、r filename将filename中的内容插入到光标后面,r!ls将ls工具的输出导入到光标后面;

21、小写o,将在光标下方插入一行并进入插入模式,大写O,将在光标上方插入一行并进行插入模式;

22、R替换命令,可以替换字符,可连续替换多个字符;

23、使用y复制 ,p粘贴,可以使用,使用v进入可视模式,进行复制 ,V可以进入可视行模式;

24、set ic  配置在搜索时忽略大小写,set noic 禁用忽略大小写,set hls 高亮显示查找字符 set nohls关          闭高亮显示 

vi: Visual Interface

vim:vi improved


编辑模式(命令模式)

输入模式

末行模式

一、打开文件

编辑--》输入模式:

    i:在当前光标所在字符的前面,转为输入模式;

    a:在当前光标所在字符的后面,转为输入模式;

    o:在当前光标所在行的下方, 新建一行

    I:在当前光标所在行首,转换为输入模式

    A:在当前光标所在的行尾,转换为输入模式

    O:在当前光标所在行的上方, 新建一行

输入模式——》编辑:

    ESC

编辑——》末行模式

    :

末行模式——》编辑模式

    ESC,ESC

二、关闭文件

    1、末行模式关闭文件

    :q 退出

    :wq

    :q!

    :w

    :w! 强行保存

    :x保存退出

    ZZ:保存退出

三、移动光标

    h j k l 

    #h:移动#个字符;

1、按单词为单位移动

    w :移至下个单词的词首

    e:跳到当前单词词尾或下个单词的词尾

    b:跳至当前和前一个单词的词首

    #w:跳至#个单词词首

2、行内跳转

    0:跳到行首,绝对行首

    ^:跳到行首,行首第一个非空白字符

    $:绝对行尾

3、行间跳转

    #G:跳转至第#行

    G:最后一行

    末行模式下,直接给出行号, 回车即可

四、翻屏

    ctrl+f:向下翻一屏

    ctrl+b:向上翻一屏

    ctrl+d:向下翻半屏

    ctrl+u:向上翻半屏

五、删除单个字符

    x:删除单符

    #x:删除光标所在处及向后的共#个字符

六、删除命令:d(跟跳转命令组合使用)

    d$:删除到行尾

    d0:删除到行首

    dd:删除光标所在行

    #dd:删除包括当前光标所在行内的#行

    末行模式下:startadd,endaddd

    .,+5d 从当前行到向下的5行删除

    .表示当前行

    $:最后一行

    +#:向下的#行

    $-1:倒数第1行

七:粘贴命令p

    P:事先粘贴到行上方,非整行粘贴到前面

    p:整行粘贴到下方,非整行粘贴到后面

八、复制命令

    用法同d命令

九:修改:先删除内容,再转换为输入模式c

    c:同d命令

    c$:删除到行尾,再进入输入模式

十:替换r    

    r

    R:替换模式

十一、撤消编辑操作

    u:撤消前一次的操作

    ctrl+r:撤消上一次的撤消操作

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

    .

十三、可视化模式

    v:按字符选取

    V:按矩形选取

十四:查找

    /pattern

    ?pattern

十五:查找并替换

    在末行模式下使用s命令

    .,$-2/he/HE/g 查找当前行到倒数第二首查找he并替换为HE

    %s///g 全文查找并替换

vi +12 inittab 打开文件处在12行

vi + inittab 打开文件处在文件最尾行

vi +/PATTERN:打开文件,定位至第一次被模式匹配到的行的行首

10,20d 删除10到20行

!ls /etc 在命令下执行命令


十六、如何打开多个文件

    vim file1 file2 file3

    :next 切换至下一个文件

    :prev 切换至前一个文件

    :last 切换至最后一个文件

    :first 切换至第一个文件

退出

    :qa 全部退出

十七、分屏显示一个文件

ctrl+w,s 水平拆分窗口

ctrl+w,向下,向上的箭头,可以换到拆分下面的窗口

ctrl+w,v 垂直拆分窗口

ctrl+w,向左,向右的箭头,可以换到拆分下面的窗口

:qa 退出全部窗口

十八:分窗口多个文件

vim -o file1 file2

vim -O file1 file2

十九:将当前文件中部分内容另存为另外一个文件

末行模式下使用命令:

    :w

    :addr1,addr2w /path/to/file

二十、将另外一个文件内容填充在当前文件中

    :r /path/to/file

二十一、跟shell交互

    :!command

二十二、高级话题

1、显示或取消等号

:set number

:set nonumber

2、显示忽略或区分大小写

:set ignorecass 

:set noig

:set ic 缩写

3、设定自动缩进

:set autoindent

:set ai

:set noai

4、查找到的文本高亮显示或取消

:set hls

:set nohls

5、语法高亮

:syntax on

:syntax off

二十三、VIM配置文件

/etc/vimrc

~/.vimrc


vim -r file  恢复未正常退出的文件