vi编译器是一中命令行编译器,它有三种基本模式:
普通模式:vi的默认模式
插入模式:可以进行编辑
命令行模式(底行模式)
三种模式之间的相互转换:
普通模式到插入模式:
i (在光标前一个位置开始插入)
I(光标移动到开头开始插入)
a(从光标的下一个位置开始插入)
A(光标移动末尾开始插入)
o(在当前行的下一行创建一个新行开始插入)
O(在当前行的上一行创建一个新行开始插入)
插入模式到普通模式:
Esc回到普通模式
注:无论处于何种模式,按Esc键都会直接跳回普通模式
底行(命令)模式
普通模式到底行模式
先按:(冒号)
加w保存
加q退出
强制退出不保存加q!
加!pwd 获取路径(加其他命令亦是)
从底行模式回到普通模式
按俩下Esc
每种模式都有着不同的操作为我们使用vi提供了很大的方便
普通模式下的操作
yyp (复制当前行到下一行)
nyyp (复制光标所在行开始连续向下的n行)
dd (剪切(删除)光标所在行) 再按p复制剪切行
ndd (删除光标所在行往下的n行)
x 删除字符
w 向右移动一个单词
b 向左移动一个单词
dw 删除单词
s 删除光标所在字符然后进入插入模式
D 删除光标字符所在之后的数据(同一行)
r 替换光标所在字符
R 替换光标所在之后所有数据(一直替换)
u 撤销(向左)
ctrl+r 撤销过头后再撤销回来(向右)
# 向上匹配光标所在字符
* 向下匹配光标所在字符
gg=G 代码风格混乱时用来 快速(全文对齐) gg光标回到文档的首行 G光标回到文档的最后一行
hjkl 移动光标 左上下右
插入模式
视图模式
v 进入视图模式 再拖动光标 按行选
ctrl +v 进入视图模式 再拖动光标(用键盘) 按列选中 按r为替换再按/(快速添加注释)删除注释亦然
ctrl+f 向上翻页
ctrl+b 向下翻页
底行模式
?world 匹配
:6,7s/world/bit/g 第六行第七行把world替换为bit
:%s/world/bit/g 全文替换