天天看点

杂记——vi/vim常用快捷键

文章目录

    • vi
      • vi的三种模式
      • 三种模式的切换
      • 常用命令
        • 1.光标
        • 2.查找替换
        • 3.删除、复制、粘贴
        • 4.进入编辑模式
        • 5.保存、退出

vi

vi的三种模式

  • 一般命令模式(command mode):

    光标的移动,搜索,替换,删除字符,删除整行,复制整行,粘贴整行。

  • 编辑模式(insert mode):

    插入或替换编辑文件内容。

    底下会显示

    INSERT

    REPLACE

    字样。
  • 命令行模式(command-line mode):

    读取、保存、批量替换等其他额外功能。

三种模式的切换

  • 其他模式 -> 一般命令模式:

    ESC

  • 一般命令模式 -> 编辑模式:

    i/I

    o/O

    a/A(插入)

    r/R(替换)

  • 一般命令模式 -> 命令行模式:

    :

    /

    ?

常用命令

1.光标

移动一个字符:方向键

上下左右

ijhk

上下翻页:

Ctrl + f(向下)

+ b(向上)

行首:

Home

行尾:

$

End

文件首行:

gg

文件末行:

G

向下n行:

n <Enter>

2.查找替换

向下查找word:

/word

,(?word 向上)

替换n1与n2行之间的 word1 为 word2:

:n1,n2s/word1/word2/g

替换全文的 word1 为 word2:

:1,$s/word1/word2/g

:%s/word1/word2/g

1

最后的

/g

如果改成

/gc

表示替换前需确认

3.删除、复制、粘贴

删除:

x

:相当于del、

X

:相当于backspace

剪切整行:

dd

复制整行:

yy

粘贴:

p

:粘贴到光标下一行,P:粘贴到光标上一行

撤销:

u

重做:

ctrl + r

注意:

ndd,nyy:相当于n次dd,n次yy

d,y后面加1G,G,$,0:分别表示从光标处一直到首行,末行,行尾,行首

例如d1G表示删除当前行到首行,y0表示复制当前字符到行尾

4.进入编辑模式

i :从目前光标所在处输入

I :在目前所在行的第一个非空格符处开始输入

a :从目前光标所在的下一个字符处开始输入』

A :从光标所在行的最后一个字符处开始输入』

o :在目前光标所在的下一行处输入新的一行』

O :在目前光标所在处的上一行输入新的一行

r :只会取代光标所在的那一个字符一次

R:会一直取代光标所在的文字,直到按下 ESC 为止

5.保存、退出

:w :保存

:w! :强制保存

:q :关闭

:q! :强制关闭(不保存)

:wq :保存关闭

:wq! :强制保存关闭

:w [filename] :另存为

:set nu :显示行号

:set nonu :取消显示行号

继续阅读