三种模式
- 一般指令模式
- 编辑模式
- 指令列模式
三种指令的关系及作用
一般指令模式
“光标移动”常用指令
- 四个方向键控制最基础的移动
- n,向下移动n行
- nG,n表示数字,指移动到第n行(在指令列命令模式中有个:set nu命令可以显示行号)
- G,移动到改文件最后一列
- gg,移动该文件第一列
- [Ctrl]+[f],向下移动一页
- [Ctrl]+[b],向上移动一页
- [Ctrl]+[d],向下移动半页
- [Ctrl]+[u],向上移动半页
- 0或[home],数字0,移动到该列最前面
- $或[End],移动到该列最后面
“搜寻与取代”常用指令
- /word,向光标下搜寻word的字符串
- ?word,向光标上搜寻word的字符串
- n,重复前一个搜寻动作,可以持续搜寻下一个
- :n1,n2s/word1/word2/g,n1和n2为数字,在n1,n2之间搜寻word1,并用word2来替换(用$表示n2时表示到最后一列)
“删除、复制和粘贴”常用指令
- nx(X),n为数字,表示向后(X为向前)连续删除n个字符
- dd,表示删除光标该行
- ndd,表示删除光标向下的n行
- (n)yy,表示复制光标(向下n)该行
- p( P),表示在光标下一行(上一行)粘贴数据
- u,重复前一个动作
- [Ctrl]+r,重做上一个动作
指令列命令模式
“存储、离开等”指令
- :w,将编辑的数据写入硬盘
- :q,退出vi
- :wq,写入并退出vi
- :w [filename],将编辑的数据保存为另一个文件
- :set nu,显示行号
- :set nonu,取消行号