2.1. vi编辑器中有三种状态模式
1.命令模式
2.输入模式
3.末行模式
三种模式间的相互转换
2.2. vi编辑器的启动与退出
1、$ vi --直接进入编辑环境
2、$ vi myfile --进入编辑环境并打开(新建)文件
退出vi编辑环境
3、:q! --输入末行命令放弃对文件的修改,并退出编辑器
保存文件
:w --保存对vi编辑器中已打开文件的修改
另存为文件
:w myfile --将vi编辑器中的内容另存为指定文件名
退出vi编辑器的多种方法
:q --没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器
:wq --对vi编辑器中的文件进行保存并退出vi编辑器
:q! --放弃对文件内容的修改,并退出vi编辑器
2.3. 光标的移动和翻页操作
操作类型光标操作键功能
h --向左移动光标
l --向右移动光标
k --向上移动光标
j --向下移动光标
翻页
Ctrl + f --向前翻整页
Ctrl + b --向后翻整页
Ctrl + u --向前翻半页
Ctrl + d --向后翻半页
2.4. 行内快速跳转
操作键功能
^ --将光标快速跳转到本行的行首字符
$ --将光标快速跳转到本行的行尾字符
w --将光标快速跳转到当前光标所在位置的后一个单词的首字母
b --将光标快速跳转到当前光标所在位置的前一个单词的首字母
e --将光标快速跳转到当前光标所在位置的后一个单词的尾字母
2.5. 文件内行间快速跳转
命令功能
:set nu --在编辑器中显示行号
:set nonu --取消编辑器中的行号显示
1G --跳转到文件的首行
G --跳转到文件的末尾行
#G --跳转到文件中的第#行
2.6. 进入输入模式
命令功能
i --在当前光标处进入插入状态
a --在当前光标后进入插入状态
A --将光标移动到当前行的行末,并进入插入状态
o --在当前行的下面插入新行,光标移动到新行的行首,进入插入状态
O --在当前行的上面插入新行,光标移动到新行的行首,进入插入状态
cw --删除当前光标到所在单词尾部的字符,并进入插入状态
c$ --删除当前光标到行尾的字符,并进入插入状态
c^ --命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态
2.7. 输入模式的编辑键操作
按键功能
方向键进行上下左右方向的光标移动
Home --快速定位光标到行首
End --快速定位光标到行尾
PageUp --进行文本的向上翻页
PageDown --进行文本的向下翻页
Backspace --删除光标左侧的字符
Del --删除光标位置的字符
2.8. 删除操作
命令功能
x --删除光标处的单个字符
dd --删除光标所在行
dw --删除当前字符到单词尾(包括空格)的所有字符
de --删除当前字符到单词尾(不包括单词尾部的空格)的所有字符
d$ --删除当前字符
到行尾的所有字符
d^ --删除当前字符到行首的所有字符
J --删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容
2.9. 撤消操作
命令功能
u取消最近一次的操作,并恢复操作结果
可以多次使用u命令恢复已进行的多步操作
U取消对当前行进行的所有操作
Ctrl + r对使用u命令撤销的操作进行恢复
2.10. 复制与粘贴操作
命令功能
yy --复制当前行整行的内容到vi缓冲区
yw --复制当前光标到单词尾字符的内容到vi缓冲区
y$ --复制当前光标到行尾的内容到vi缓冲区
y^ --复制当前光标到行首的内容到vi缓冲区
p --读取vi缓冲区中的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容)
2.11. 字符串查找操作
命令功能
/word从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n定位下一个匹配的被查找字符串
N定位上一个匹配的被查找字符串
2.12. 字符串替换操作
命令功能
:s/old/new 将当前行中查找到的第一个字符“old” 串替换为“new”
:s/old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”
:#,#s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:%s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s/old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
2.13. vi编辑器的在线帮助
使用vi在线帮助需安装的软件包
vim-common-6.3.035-3.i386.rpm
vim-enhanced-6.3.035-3.i386.rpm
软件包在RHEL5的第2张安装光盘
使用vi在线帮助的两种方法
在vi编辑器中按“F1”键
输入help末行命令
:help