注意:以下命令均为vi文本下使用
1.移动 vi中使用空行来区分段落 {上一段 }下一段
在程序开发是,通常一段功能相关的代码会写在一起--之间没有空行
括号切换 %括号匹配及切换 在程序世界里(){}【】使用频率很高,而且都是成对出现的
2.选中文本(可视模式)学习复制命令之前,应该学会怎么样选中要复制的代码
vi中提供了三种可视模式,可以方便程序员选择选中文本的方式
按ESC可以放弃选中,返回到命令模式
v 可视模式 从光标位置开始按照正常模式选择文本
V 可视行模式 选中光标经过的完整行
Ctrl+v 可是块模式 垂直方向选中文本
#可视模式下,可以和移动命令连用,例如ggVG能够选中所有内容
3.撤销和恢复撤销 u(undo) 撤销上次命令
Ctrl+r(redo) 恢复撤销的命令
4.删除文本 x cut 删除光标所在字符,或者选中文字#vi中的删除类似于图形界面中的剪贴命令
d(移动命令) delete 删除移动命令对应的内容
dd delete 删除光标所在行,可以ndd复制多行
D delete 删除至行尾
#如果使用可视模式已经选中了一段文本,那么无论使用d还是x都可以删除选中文本
删除命令可以和移动命令连用,以下是常见的组合命令:
dv #从光标位置删除到单词末尾
d0 #从光标位置删除到一行的起始位置
d} #从光标位置删除到段落末尾
ndd #从光标位置向下连续删除n行
d代码行G #从光标所在行 删除到 指定代码行 之间的所有代码
d'a #从 光标所在行 删除到标记a之间的所有代码
5.复制删除
y(移动命令)(copy) 复制
yy 复制一行
p(paste) 粘贴
#vi中的文本缓冲区和系统的剪贴板不是同一个
所以在其他软件中使用Ctrl+c复制的内容,不能在vi中通过p命令粘贴
可以在编辑模式下通过鼠标右键粘贴
6.替换r(replace) 替换当前字符
R(replace) 替换当前光标后的字符
#R命令可以进入替换模式,替换完成后,按下ESC就可以回到命令模式
7.缩排和重复执行
>> 向右增加缩进
<< 向左增加缩进
. 重复上次命令
#在可视模式下,缩进命令只需要使用一个>或者<
#在程序中,缩进通常用来表示代码的归属关系 前面的空格越少,代码的优先级别越高
8.查找 /(所要查找的内容)
查找到指定 内容后,使用Next查找下一个出现的位置:
n 查找下一个
N 查找上一个#如果不想高亮显示,可以随便查找一个不存在的内容即可
单词快速匹配
* 向后查找当前光标所在单词
# 向前查找当前光标所在单词
9.查找和替换-全局替换 :%s///g
在vi中查找和替换命令需要在末行模式下执行
:%/(需换内容)/(算换内容)/g
10.查找和替换-替换可是区域 :s///g
先选中要替换文字的范围
命令格式 :s/旧文本/新文本/g (选中区域替换,其他区域高亮显示)
11.查找和替换-确认替换 :%s///gc
命令格式 :%s/旧文本/新文本/gc(推荐使用)
12.插入命令
在vi中除了常用的i进入编辑模式外,还提供了以下命令同样可以进入编辑模式
i(insert) 在当前字符前插入文本
I(insert) 在行首插入文字
A(append) 在行末添加文本
o 在当前行后面插入一空行
O 在当前行前面插入一空行
13.编辑命令和数字的连用(演练)
在开发中,可能会遇到连续输入N个同样的字符
例如**********连续10个星号
实现这个效果可以在命令模式下
1.输入10,表示要输入10次
2.输入i进入编辑模式
3.输入*也就是重复的文字
4.按下ESC返回到命令模式,返回之后vi就会把2、3步的操作重复10次
#提示:正常开发时,在进入编辑模式之前,不要按数字
14.利用可视块给多行代码增加注释(演练)
在开发中,可能会遇到一次性给多行代码增加注释的情况,要实现这个效果可以在命令模式下
1.移动到要增加注释的第一行代码,按^来到行首
2.按Ctr+v进入可视块模式
3.使用j向下连续选中要添加的代码行
4.输入I进入编辑模式,并在行首插入
5.输入#
6.按下ESC返回到命令模式
转载于:https://www.cnblogs.com/Leo520/p/9937527.html