Vi编辑器
vi编辑器是Linux系统下最基本的编辑器,工作在字符模式下,由于不使用图形界面,vi的工作效率非常高,且它在系统和服务管理中的功能是带图形界面的编辑器无法比拟的。vi编辑器共有三种工作模式,分别是:命令模式(command mode)、插入模式(insert mode)和底行模式(last line mode),这三种模式间可进行转换,转换方式如图1所示。
图1 vi编辑器模式转换示意图
在学习这三种模式之前,我们先来学习使用Vi编辑器打开文件的方法。
案例:将目录etc下的passwd文件复制到itheima用户的家目录中,将副本命名为passwd,使用vi编辑器打开家目录下的passwd文件。
[itheima@localhost ~]$ cp /etc/passwd passwd
[itheima@localhost ~]$ vi passwd
执行这两条命令之后,就在Vi编辑器中打开了passwd文件的副本。
下面,我们来分别介绍Vi编辑器的三种模式和每种模式对应的常用操作与命令。
1、命令模式
使用Vi编辑器打开文件后,默认进入命令模式。在该模式下,可通过键盘控制光标的移动、文本内容的复制、粘贴、删除等。
(1)光标移动
在命令模式中,光标的移动可分为6个常用的级别,分别为:字符级、行级、单词级、段落级、屏幕级和文档级。各个级别中的相关按键及其含义如表1所示。
表1 光标移动操作
级别 | 操作符 | 说明 |
---|---|---|
字符级 | “左键”或字母“h” | 使光标向字符的左边移动 |
“右键”或字母“l” | 使光标向字符的右边移动 | |
行级 | “上键”或字母“k” | 使光标移动到上一行 |
“下键”或字母“j” | 使光标移动到下一行 | |
符号“$” | 使光标移动到当前行尾 | |
数字“0” | 使光标移动到当前行首 | |
单词级 | 字母“w” | 使光标移动到下一个单词的首字母 |
字母“e” | 使光标移动到本单词的尾字母 | |
字母“b” | 使光标移动到本单词的首字母 | |
段落级 | 符号“}” | 使光标移至段落结尾 |
符号“{” | 使光标移至段落开头 | |
屏幕级 | 字母“H” | 使光标移至屏幕首部 |
字母“L” | 使光标移至屏幕尾部 | |
文档级 | 字母“G” | 使光标移至文档尾行 |
n+G | 使光标移至文档的第n行 |
(2)删除
若需要对文档中的内容进行删除操作,可以通过字母“x”、“dd”等来实现,相关按键及对应含义如表2所示。
表2 删除操作
操作符 | 说明 |
---|---|
字母“x” | 删除光标所在的单个字符 |
字母“dd” | 删除光标所在的当前行 |
n+dd | 删除包括光标所在行的后边n行内容 |
d+$ | 删除光标位置到行尾的所有内容 |
(3)复制和粘贴
对文档进行复制、粘贴操作的相关按键及对应含义如表3所示。
表3 复制与粘贴操作
操作符 | 说明 |
---|---|
字母“yy” | 复制光标当前所在行 |
n+yy | 复制包括光标所在行后的n行内容 |
y+e | 从光标所在位置开始复制直到当前单词结尾 |
y+$ | 从光标所在位置开始复制直到当前行结尾 |
y+{ | 从当前段落开始的位置复制到光标所在位置 |
p | 将复制的内容粘贴到光标所在位置 |
在命令模式下,还有如下几种常见的操作:
● 字母“u”:撤销命令
● 符号“.”:重复执行上一次命令
● 字母“J”:合并两行内容
● r+字符:快速替换光标所在字符
熟练掌握以上按键,是提高使用使用vi编辑器编辑文档的效率,读者应尽量掌握以上按键,并将其应用到实际操作中。
上文已经提到,vi编辑器有三种工作模式,下面分别介绍在vi编辑器中如