### VI命令手册——Linux高手必备手册 #### 一、引言 在Linux系统中,`vi`编辑器是每一个Linux用户必须掌握的基本工具之一。它不仅功能强大而且使用灵活,适用于快速编辑文本文件。本手册将详细介绍`vi`编辑器的各种常用命令及其用法,帮助用户更高效地进行文本编辑工作。 #### 二、启动vi编辑器 - **vi filename**:打开或创建名为`filename`的文件。 - **vi +n filename**:在文件`filename`的第`n`行处打开编辑器。 - **vi + filename**:在文件末尾打开编辑器。 - **vi +/pattern filename**:在文件`filename`中搜索第一个匹配`pattern`的位置并打开编辑器。 - **vi -r filename**:恢复上次使用vi编辑时因系统崩溃而未保存的`filename`文件。 - **vi filename1.filename2**:同时编辑两个文件`filename1`和`filename2`。 #### 三、基本导航命令 - **h**:向左移动一个字符。 - **l** 或 **space**:向右移动一个字符。 - **Backspace**:向左删除一个字符。 - **k** 或 **Ctrl+p**:向上移动一行。 - **j** 或 **Ctrl+n**:向下移动一行。 - **Enter**:向下移动到下一行的开头。 - **w** 或 **W**:向前跳过一个单词。 - **b** 或 **B**:向后跳过一个单词。 - **e** 或 **E**:移动到单词的结尾。 - **) 或 (**:跳到句子的结束或开始。 - **} 或 {**:跳到段落的结束或开始。 - **nG**:跳到文件的第`n`行。 - **n+n**:向下滚动`n`行。 - **n-n**:向上滚动`n`行。 - **n$**:移动到当前行的结尾。 - **H**:跳到屏幕顶部。 - **M**:跳到屏幕中间位置。 - **L**:跳到屏幕底部。 - **0**:移动到当前行的开始。 - **$**:移动到当前行的结尾。 - **Ctrl+u**:向上翻滚半屏。 - **Ctrl+d**:向下翻滚半屏。 - **Ctrl+f**:向下翻滚一屏。 - **Ctrl+b**:向上翻滚一屏。 - **nz**:移动到当前行的第`n`个字符位置。 #### 四、插入与修改模式 - **i**:在光标前插入文本。 - **I**:在当前行首插入文本。 - **a**:在光标后插入文本。 - **A**:在当前行尾插入文本。 - **o**:在当前行下方新开一行插入文本。 - **O**:在当前行上方新开一行插入文本。 - **r**:替换光标下的字符。 - **R**:替换光标下的字符,并继续覆盖直到按下`ESC`键。 - **s**:删除光标所在字符,并进入插入模式。 - **S** 或 **cc**:删除当前行,并进入插入模式。 - **cword** 或 **cw**:更改当前单词,并进入插入模式。 - **C**:更改当前行剩余部分,并进入插入模式。 - **ndw** 或 **ndW**:删除当前行起始位置的`n`个单词,并进入插入模式。 - **dw** 或 **dW**:删除当前行起始位置的一个单词。 #### 五、删除与复制命令 - **x** 或 **X**:删除一个字符(`x`向前,`X`向后)。 - **Ctrl+u**:删除已经输入但未确认的文本。 - **/pattern**:从当前位置向文件末尾查找`pattern`。 - **?pattern**:从当前位置向文件开始查找`pattern`。 - **n**:找到下一个匹配项。 - **N**:找到上一个匹配项。 - **s/p1/p2/g**:将当前行中的所有`p1`替换为`p2`。 - **n1,n2s/p1/p2/g**:将第`n1`行至第`n2`行中所有的`p1`替换为`p2`。 - **g/p1/s//p2/g**:将文档中所有匹配`p1`的部分替换为`p2`。 - **all**:选择整个文档。 - **term**:设置显示模式,如颜色、高亮等。 - **ignorance**:忽略大小写差异。 - **list**:显示制表符和特殊字符。 - **number**:显示行号。 - **report**:显示更改统计信息。 - **terse**:显示简短的信息。 - **warn**:当尝试退出时如果文件有改动则警告。 #### 六、保存与退出命令 - **w**:保存当前文件。 - **e filename**:加载新文件`filename`。 - **x**:保存文件并退出。 - **q**:退出vi编辑器(如果文件未改变)。 - **q!**:不保存文件直接退出。 - **!command**:执行shell命令`command`。 - **n1,n2w!command**:将第`n1`行到第`n2`行的内容作为`command`的输入,并执行该命令。 - **r!command**:将命令`command`的输出结果插入到当前光标位置。 - **"?nyy"**:复制当前行向上`n`行。 - **"?nyw"**:复制当前行向上`n`词。 - **"?nyl"**:复制当前行向上`n`个字符。 - **"?p"**:粘贴复制的内容。 - **ndd**:删除当前行向下`n`行,并将其保存在剪贴板中。 通过以上介绍可以看出,`vi`编辑器提供了极其丰富的命令集,可以满足各种复杂的文本编辑需求。熟练掌握这些命令,不仅能提高编辑效率,还能让操作更加流畅自如。希望本手册能成为您学习和使用`vi`编辑器的良好指南。
















vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次进行编辑
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行


- 粉丝: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 毕业设计论文-基于Linux的Apache服务器的设计.doc
- CAD学习课件Chapter1.ppt
- WindowsXP部分(教师)(1).docx
- 北京Linux培训班[达内]---北京Linux培训机构!.docx
- JavaScript重载函数实例剖析.doc
- GB_T_22275.6_2008_良好实验室规范实施要求_第6部分:良好实验室规范原则在计算机化的系统中的应用.pdf
- 自考02326操作系统(2018版)课后习题答案.doc
- 大学计算机基础实验报告手册(非艺术类)(1).doc
- 《软件开发外包合同》.doc
- 2012年电子商务实习自我鉴定(1).doc
- 基于收益率的B2C电子商务网站结构优化的开题报告.docx
- sql实验报告9.doc
- 2023年PLC题库答案.doc
- 楼宇设备自动化系统 PPT.ppt
- 第章物流网络规划与设计.ppt
- 传感器网络支撑技术.pptx


