3.2 字符界面下vi编辑器的使用
3.2.1 vi编辑器简介
vi为view interface的简称,是Linux系统自带的一种文本编辑软件。vi编辑器是文本编辑器,不是字处理器,所以不支持对文字格式的处理,不能设置排版格式等。vi没有菜单,只有命令。vi有3种基本工作模式,分别是如图3-4所示的指令模式(Command Mode)、如图3-5所示的文本输入模式(Input Mode)、如图3-6所示的末行模式(Last Line Mode)。
图3-4 指令模式
图3-5 文本输入模式
图3-6 末行模式
vi三种基本工作模式间的相互关系如下:
①指令模式下输入a、i、o进入文本输入模式。
②文本输入模式下按【Esc】键进入指令模式。
③指令模式下输入“:”进入末行模式。
④末行模式下指令错误则返回指令模式。
下面分别介绍这3种模式:
1.指令模式
指令模式主要使用方向键移动光标位置进行文字的编辑,下面列出了常用的操作命令及含义。
0——光标移动至行首。
h——光标左移一格。
l——光标右移一格。
j——光标下移一行。
k——光标上移一行。
$+A——将光标移动到该行最后。
PageDn——向下移动一页。
PageUp——向上移动一页。
d+方向键——删除文字。
dd——删除整行。
pp——整行复制。
r——修改光标所在的字符。
S——删除光标所在的列,并进入输入模式。
2.文本输入模式
在指令模式下按a/A键、i/I键、o/O键进入文本模式,文本输入模式的命令及其含义如下:
a——在光标后开始插入。
A——在行尾开始插入。
i——从光标所在位置前面开始插入。
I——从光标所在列的第一个非空白字元前面开始插入。
o——在光标所在列下新增一列并进入输入模式。
O——在光标所在列上方新增一列并进入输入模式。
ESC——返回命令行模式。
3.末行模式
末行模式主要进行一些文字编辑辅助功能,比如字串搜索、替代、保存文件等操作。主要命令如下:
:q——结束vi程序,如果文件有过修改,先保存文件。
:q!——强制退出vi程序。
:wq——保存修改并退出程序。
:set nu——设置行号。
需要注意的是,以上指令都是在英文输入模式下才有效,在Linux终端下有时用的是中文输入模式,输入中文的“:”就不能转换模式。