19-30
替换命令,一般在修改幅度很小的情况下使用
r:replace,替换当前字符(命令模式下的替换)
R:替换当前行光标后的字符(替换模式)
提示:
1、R命令可以进入替换模式,替换完成后,按Esc可以回到命令模式
2、替换模式的作用就是不用进入编辑模式,对文件进行轻量级的修改。
缩排和重复执行
1、>>:向右增加缩进
2、<<:向左减少缩进
3、. :重复上次命令
查找字符串或者单词
/str:查找str
查找到指定内容之后,使用Next查找下一个出现的位置
n:查找下一个
N:查找上一个
*:向后查找当前光标所在单词
#:向前查找当前光标所在单词
提示:如果不想看到高亮显示,可以随便查找一个文件中不存在的内容即可。
查找并替换
在vi中查找和替换命令需要在末行模式下执行
记忆命令格式:
:%s///g
1)全局替换
:%s/旧文本/新文本/g,一次性替换文件中 所有出现的旧文本
2)可视区域替换
先选中要替换文字的范围
命令格式如下:
:s/旧文本/新文本/g
3)确认替换
%s/旧文本/新文本/gc,末尾的g改成gc之后,替换的时候会进行提示,推荐使用
y:yes 替换
n:no 不替换
a:all 替换所有
q:quit 退出替换
l:last 最后一个,并把光标移动到行首
^E:向下滚屏
^y:向上滚屏
进入编辑模式的6个命令
i:insert,在当前字符前插入文本,常用
I:在行首插入文本,较常用
a:append,在当前字符后添加文本
A:在行末添加文本,较常用
o:在当前行后面插入空行,常用
O:在当前行前面插入空行,常用
编辑命令和数字连用
例如要输入**********连续10个星号,步骤:
1、输入10,表示要重复10次
2、输入 i 进入编辑模式
3、输入 * 也就是需要重复的文字
4、按下Esc返回到命令模式,返回之后vi会将2、3两部的操作重复10次
提示:在正式开发时,在进入编辑模式之前,不要按数字!!!
利用 可视块 给多行代码增加注释,步骤:
1、移动到要添加注释的第一行代码,按 ^ 来到行首
2、使用 Ctrl+v 进入可视块模式
3、使用 j 向下选中要添加的代码行
4、输入 I 进入编辑模式,并在行首输入#,注意一定要用大写的I,小写i无法执行可视块模式下的插入
5、按下Esc返回到命令模式,返回后vi会在之前选中的每一行代码前插入#。
末行命令扩展
:e. :edit,会打开内置的文件浏览器,浏览当前目录下的文件,如果知道要编辑的文件名,可以将 . 替换成文件名,直接打开该文件。
:n 文件名:new,新建文件
:w 文件名:write,另存为,但是依然编辑当前文件,并不会切换文件
提示:切换文件之前必须保证当前文件已经被保存,在实际开发中,可以使用 w 命令阶段性地备份代码
分屏命令
使用分屏命令可以同时编辑和查看多个文件
:sp [文件名],split,横向增加分屏
:vsp [文件名],vertical split,纵向增加分屏
切换分屏窗口,先按Ctrl+w (Windows)控制窗口,再按以下字母:
w:windows,切换到下一个窗口
r:reverse,互换窗口
c:close,关闭当前窗口,但是不能关闭最后一个窗口
q:quit,退出当前窗口,如果是最后一个窗口,则关闭vi
o:other,关闭其他窗口