基本介绍
- vi包含三种模式:命令模式、编辑模式和尾行模式
- vi一个文件后,默认处于命令模式
模式转换
- 命令模式是三个模式的核心,也是模式转换的中转站
- 命令模式下,使用
i,a,o等字母以不同的状态进入编辑模式
- 编辑模式下按
Esc键退回命令模式
- 命令模式下,使用
:进入尾行模式,尾行多用于查找和保存
- 尾行模式下按
Esc退回命令模式
命令模式相关命令
1.进入编辑模式
i 在光标所在位置之前插入字符
a 在光标所谓位置之后插入字符
o 当前行的下一行插入字符
O 当前行的上一行插入字符
I 在文件首插入
A 在文件尾插入
2.常用的操作
u 撤销
ctrl + u 反撤销
. 重复执行上次操作
>> 当前行缩进
<< 当前行反缩进
shirft + zz 保存后退出,相当于:wq
3.编辑相关命令
yy 复制当前行
nyy 复制当前行往下的n行,如2yy复制两行
dd 剪切当前行,可用p粘贴,其他剪切同理
ndd 简介当前行往后的n行,如2dd剪切两行
x 删除当前字符
X 删除当前字符的前一个字符
dw 剪切当前单词
d0 剪切当前位置到行首的所有字符
D 剪切当前位置到行尾的所有字符
p 粘贴
r 替换当前位置的字符
R 从当前位置开始往后连续替换字符
4.批量选择与缩进
v 进入选择模式,使用上下左右进行选择
V 和v大致相同,区别就是该命令会选择光标经过的行的一整行
> 选择的行往右缩进,可以配合.命令使用
< 选择的行往左缩进,可以配合.命令使用
5.跳转相关命令
h,j,k,l 分别表示左,下,上,右
nG 跳转到第n行,如20G跳转至第2o行
gg 跳转到文件首
G 跳转到文件尾
{ 跳转到当前代码块首部
} 跳转到当前代码块尾部
w 跳转到下一个单词
b 跳转到上一个单词
M 跳转到当前屏幕区域的中间行
H 跳转到当前屏幕区域的首行
L 跳转到当前屏幕区域的尾行
ctrl + f 向下翻一页
ctrl + b 向上翻一页
ctrl + d 向下翻半页
ctrl + u 向上翻半页
尾行模式与查找
: 进入尾行模式,一般使用wq进行报错
/ 进入查找
/hello 查找所有包含hello的位置,并会高亮显示
- 要去掉高亮,可以查找一个不存在的字符串
a 跳转到下一个搜索结果
A 跳转到上一个搜索结果
:%s/hello/world 将所有的hello替换为world
:11,16s/hello/world/g 将11-16行的hello替换为world,可用于函数变量的重命名
posted @
2018-05-12 10:33
tan90丶
阅读(
237)
评论()
收藏
举报