🌀 技术人生
凡事有交代,件件有着落,事事有回音
Linux命令之vi编辑器命令详解

1.vi编辑器有三种模式: 插入模式 命令模式 转义模式

2.单文本常用命令详解(vi 文件名) 命令分类

命令模式下输入

功能说明 进入插入模式

i

在当前光标之前插入 a

在当前光标之后插入 o

在当前光标下面插入新的一行并输入 I

在当前光标所在行行首插入 A

在当前光标所在行行尾插入 O

在当前光标上面插入新的一行并输入 光标移动

h、j、k、l

光标分别向上下左右移动 G

光标移动至文件的最后一行 n+G

光标移动至第n行 删除字符

x

删除光标所在位置上的字符 dd

删除光标所在行 n+x

向后删除n个字符,包含光标所在位置 n+dd

向下删除n行,包括光标所在行 dG

删除至文件尾 d1G

删除至文件首 d$/D

删除至行尾 d0

删除至行首 dw

删除至词尾 ndw

删除后面的n个词 复制粘贴

yy

将光标所在行复制 y1G

复制到文件首 yG

复制到文件尾 y0

复制到行首 y$

复制到行尾 n+yy

将从光标所在行起向下的n行复制 n+yw

将从光标所在位置起向后的n个字符复制 p

将复制的字符串粘贴在当前光标的后(下)面 P

将复制的字符串粘贴在当前光标的前(上)面 字符串查找

/字符串 enter

向后查找指定的字符串 ?字符串 enter

向前查找指定的字符串 n

继续查找满足条件的字符串 显示行号

:set nu

每一行前显示行号 :set nonu

不显示行号 文件存取

:n,nw w文件名

将第n-m行的内容写入指定文件 :n,nw w »文件名

将第n-m行的内容追加到指定文件末尾 :r 文件名

读取指定文件,插到当前光标所在的行下面 :r!

在当前光标插入命令执行结果 :e 文件名

在原窗口打开新文件 :e!

放弃所有修改重新编辑 存盘与退出

:w 文件名

以指定的文件名存盘,不退出VI :wq 文件名

以指定的文件名存盘并退出VI :q

退出VI :q!

强行退出VI,不管是否完成文档的保存工作

3.多文本编辑常用命令(vi 文件名列表)

命令模式下输入

功能说明 :edit 文件名

关闭当前文件并打开另一个文件,若当前文件未保存,则报错。 :write(:w)

保存当前文件 :next

编辑文件列表的下一个文件,若当前文件未保存,则报错。 :next!

编辑文件列表的下一个文件,放弃当前文件的修改 :wnext

保存当前文件并编辑文件列表的下一个文件 :args

显示文件列表 :previous

编辑文件列表的前一个文件,若当前文件未保存,则报错。 :wprevious

保存当前文件并编辑文件列表的前一个文件 :first

定位到文件列表的第一个文件 :last

定位到文件列表的最后一个文件 :2next

向后跳两个文件 :set autowrite

设置自动保存 :set noautowrite

取消自动保存 :args文件名类别

编辑另一个文件列表 Ctrl+^

当前文件和刚编辑过的文件之间切换 :sp(:vsp) 文件名

分割出一个窗口,并在窗口中打开文件 :e

在原窗口中打开新文件 Ctrl+W

分割窗口之间的光标切换 :ls

查看已打开的文件有多少个 :b :set diff

比较两个文件,在两个文件中分别用该命令,查看比较结果 :vsp 文件名

打开一个新文件


最后修改于 2018-10-14

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。