VI基本的工作模式

2020-06-12 16:48:17 浏览数 (1)

阅读文本大概需要3分钟。

0x01:VI有三种基本的工作模式

  • 指令模式
  • 文本输入模式
  • 行末模式

他们的相互关系如下:

  • 指令模式(Command Mode)输入a、i、o进入文本输入模式(Input Mode)。
  • 文本输入模式(Input Mode)下按ESC进入指令模式(Command Mode)
  • 指令模式(Command Mode)下输入“:”进入行末模式(Last Line Mode)
  • 行末模式(Last Line Mode)下指令错误返回指令模式(Command Mode)

0x02:指令模式(Command Mode)

指令模式主要使用方向键移动光标位置进行文字的编辑,下面列出了常用的操作命令及含义。

0 :光标移动至行首

h :光标左移一格

l :光标右移一格

j :光标下移一行

k :光标上移一行

$ A :将光标移动到该行最后

PageDn :向下移动一页

PageUp :向上移动一页

d 方向键 :删除文字

dd :删除整行

pp :整行复制

r :修改光标所在的字符

S :删除光标所在的列,并进入输入模式

0x03:文本输入模式(Input Mode)

在指令模式下(Command Mode)按a/A键、i/I键、o/O键进入文本模式,文本输入模式的命令及其含义如下所示。

a :在光标后开始插入

A :在行尾开始插入

i :从光标所在位置前面开始插入

I :从光标所在列的第一个非空白字元前面开始插入

o :在光标所在列下新增一列并进入输入模式

O :在光标所在列上方新增一列并进入输入模式

ESC :返回命令行模式

0x04:末行模式(Last line Mode)

末行模式主要进行一些文字编辑辅助功能,比如字串搜索、替代、保存文件等操作。主要命令如下

:q :结束Vi程序,如果文件有过修改,先保存文件

:q!:强制退出Vi程序

:wq :保存修改并退出程序

:set nu :设置行号

0x05:VI列编辑操作

  • 删除列

1)光标定位到要操作的地方

2)CTRL v 进入“可视 块”模式,选取这一列操作多少行

3)d 删除

  • 插入列

插入操作的话知识稍有区别。例如在每一行前都插入"() ":

1)光标定位到要操作的地方

2)CTRL v 进入“可视 块”模式,选取这一列操作多少行

3)SHIFT i或者I(大写字母i) 输入要插入的内容

4)ESC 按两次,会在每行的选定的区域出现插入的内容

列编辑模式非常有用,开发时经常用到properties配置文件,要同时注释多行配置项时,使用列编辑模式非常便捷。

0 人点赞