作者 Simon Xiao
本文出自ITMOV旗舰『Simon Xiao技术博客』&谢绝转载
VI是在Linux命令行下常用的文本编辑工具,在服务配置管理过程中经常用到;vi的常见的使用指南,互联网上随处可见,但仅能满足初学者对文档编辑的需求。这里就我自己在使用过程中通常用到的一些技巧操作方法作一个简单总结;重点是在进入vi编辑界面后,对文档的编辑替换方法和多文档的切换做一些提示,同时附带基本操作不详细描述(技巧部分以标注)。
内容目录如下
第一弹 打开新文件
第二弹 保存文件
第三弹 光标控制和跳转
第四弹 文本录入(编辑)
第五弹 文本编辑
第六弹 使用vi打开多个文件
 
(上图为进入vi编辑后的三种模式,注意文中各操作指令所在模式)
第一弹 打开新文件
1、打开新的文件到vi编辑器中
:e filename 
注:上述操作中是指,在命令模式下输入 :(冒号)进入到末行模式,然后使用指令e 打开文档,可在文档名称前输入路径,不输入路径就代表当前目录。
2、打开新的文件到vi编辑器中,并放弃对当前文件的修改
:e! filename
3、  读取文件内容到当前vi编辑器中
:r filename
 
第二弹 保存文件
1、  保存对vi编辑器中已打开文件的修改
:w
2、  另存为文件
vi编辑器中的内容另存为指定文件名
:w myfile
3、未修改退出
没有对vi编辑器中打开的文件进行修改,或已对修改进行了保存,直接退出vi编辑器
:q
3、  保存并退出
vi编辑器中的文件进行保存并退出vi编辑器
:qw
可在命令模式下使用Shift+两次z键保存退出,个人习惯这样会快些
4、  不保存退出
放弃对文件内容的修改,并退出vi编辑器
:q!
 
第三弹 光标控制和跳转
 
1、光标移动和翻页操作 (命令模式下操作)
操作类型
光标操作键
功能
光标移动
h
向左移动光标
l
向右移动光标
k
向上移动光标
j
向下移动光标
翻页
Ctrl + f
向前翻整页
Ctrl + b
向后翻整页
Ctrl + u
向前翻半页
Ctrl + d
向后翻半页
 
2、行内快速跳转 (命令模式下操作)
操作键
功能
^
将光标快速跳转到本行的行首字符 可用Home键代替
$
将光标快速跳转到本行的行尾字符 可用End键代替
w
将光标快速跳转到当前光标所在位置的后一个单词的首字母
b
将光标快速跳转到当前光标所在位置的前一个单词的首字母
e
将光标快速跳转到当前光标所在位置的后一个单词的尾字母
 
3、文件内行间快速跳转 (行号显示为末行命令,键位操作均在命令模式下)
命令
功能
:set nu
在编辑器中显示行号
:set nonu
取消编辑器中的行号显示
1G
跳转到文件的首行(可用两次g键代替)
G
跳转到文件的末尾行(可用Shit+g代替)
个人认为可以省去大小写切换提高效率
#G
跳转到文件中的第#

第四弹 文本录入(编辑)
1、从命令模式进入输入模式
命令
功能
i
在当前光标处进入插入状态
a
在当前光标后进入插入状态
A
将光标移动到当前行的行末,并进入插入状态
o
在当前行的下面插入新行,光标移动到新行的行首,进入插入状态
O
在当前行的上面插入新行,光标移动到新行的行首,进入插入状态
cw
删除当前光标到所在单词尾部的字符,并进入插入状态
c$
删除当前光标到行尾的字符,并进入插入状态
c^
命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态
 
2、输入模式的编辑键操作
按键
功能
方向键
进行上下左右方向的光标移动
Home
快速定位光标到行首
End
快速定位光标到行尾
PageUp
进行文本的向上翻页
PageDown
进行文本的向下翻页
Backspace
删除光标左侧的字符
Del
删除光标位置的字符
 

############################未完待续###############################
######################## (续)vi入门到精通 #########################