Vi编辑器的基本用法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Vi编辑器的基本⽤法
Linux环境下能够熟练使⽤VI编辑器进⾏⽂本内容修改
1、Vi编辑器简介
vi是Visual interface的简称,它是Unix以及Linux操作系统下标准的编辑器,类似于我们⽇常使⽤的Window系统中⾃带的记事本,可以执⾏输出、删除、查找、替换、块操作的众多⽂本操作。
与Window系统中记事本能便捷式的通过⿏标和键盘组合进⾏操作外相⽐,vi的核⼼设计思想是让程序员的⼿指始终保持在键盘核⼼区域就能完成所有操作。
2、Vi编辑器的模式
如上图所⽰,vi编辑器有三种⼯作模式,不同模式间可以通过相应按键操作进⾏切换。
例如命令模式下,在键盘上输⼊i,vi编辑器进⼊编辑模式,同时在vi编辑器的左下⾓的位置将出现“--INSERT--”字样,这种情况可以在编辑器中进⾏正常的编辑操作。
当编辑器处于编辑模式或末⾏模式时,可以通过按ESC键,编辑器再次切换到命令模式。
三种模式的详细说明如下:
命令模式
shell环境下通过vi命令打开⽂件时,默认进⼊该模式。
在该模式下,⽤户可以输⼊各种合法的命令,⽤于管理⾃⼰的⽂档。
此时键盘上输⼊的各种字符,都会被当作命令来解析,如果输⼊的时合法的vi命令,输⼊完成后将执⾏相应操作。
需要注意的是,输⼊的命令不会在屏幕上显⽰。
编辑模式
该模式下,⽤户输⼊的各种字符,都会被vi当作字符显⽰到屏幕上,通过保存命令可以正式将字符保存在⽂件中(类似于我们在window 下的⽂本编辑器中输⼊想要内容)。
末⾏模式
末⾏模式⼜称转义模式,在命令模式下输⼊“:”进⼊,此时vi的最后⼀⾏显⽰⼀个“:”作为提⽰,等待⽤户输⼊命令,多数⽂件管理命令在此模式下执⾏(如把缓冲区的内容写到⽂件中),末⾏模式执⾏完⾃动进⼊命令模式。
3、Vi编辑器的命令
打开⽂件
vi+⽂件名,如要编辑main.c的⽂件,在打开shell中输⼊vi main.c 即可打开⽂件
进⼊插⼊模式
i:插⼊光标前⼀个字符
I:在⾏⾸插⼊
a:插⼊光标后⼀个字符
A:⾏末插⼊
o:向下新开⼀⾏,插⼊⾏⾸
O:向上新开⼀⾏,插⼊⾏⾸
移动光标
编辑模式下,移动插⼊⽂本位置的光标可以通过上下左右键进⾏移动,较便捷的⽅法是进⼊命令⾏模式,通过以下的移动光标的命令进⾏操作:
h:左移
j:下移
k:上移
l:右移
w:向后移动⼀个字
b:向前移动⼀个字
nG:跳转到指定⾏号,如要跳转到⽂件的⽂件的100⾏,只需在键盘上输⼊100后再输⼊G
{:按段向上移动
}:按段向下移动
gg:光标移动到⽂件开头位置
G:光标移动到⽂件末尾位置
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
ctrl+f:向下翻⼀屏
ctrl+b:向上翻⼀屏
删除⽂本
编辑模式下,删除⽂本只需将光标移动到要删除⽂本后⾯,按BackSpace,但相对较⽅便的⽅法还是进⼊命令⾏模式,通过特定删除命令操作。
x:删除光标后⼀个字符,相当于Del
X:删除光标前⼀个字符,相当于BackSpace
dd:删除当前所在⾏
ndd:删除当前光标所在⾏再内的以下n⾏
D:删除光标后本⾏所有内容
d0:删除光标前本⾏所有内容
dw:删除光标后⼀个字
db:删除光标前⼀个字
复制、粘贴⽂本
yy:复制当前⾏⽂本
nyy:复制包含当前⾏的以下n⾏
p:粘贴复制内容
重复命令
.:重复上⼀次操作命令
⽂本的移动
<<:⽂本⾏左移
>>:⽂本⾏右移
可视操作
v:按字符移动选择⽂本
V:按⾏移动
可视操作可配合yy,d,<<,>>命令执⾏已选⽂件的复制、删除、全部左移、右移等
查找,替换命令
/str:查找str的字符串,查找过程中输⼊n代表继续查找下⼀个,N代表继续查找上⼀个
:%s/old_str/new_str,将old_str替换成new_str。
默认情况下会⼀次替换⽂本中所有匹配的字符,如果想在替换前依次确认,执
⾏:%s/old_str/new_str/c
(注:查找命令会⾼亮字符,查找完毕输⼊:noh取消⽂本的⾼亮)
⽂件保存,vi退出
输⼊:w保存当前编辑,:wq保存并退出,:q!强制退出
编辑过程查看man page
编辑代码过程中,想查看⼀些要⽤到函数系统调⽤或者库函数的帮助说明,只需将光标移动到函数名位置,按shift和k便能进⼊man page该函数的介绍位置,当查看完毕按下q退出查看,此时shell中提⽰“Press ENTER or type command to continue”,再按ENTER键就能回到进⼊vi中执⾏man page命令之前位置。
如在通过vi编写代码中想查看open函数解释,⼀般执⾏“2 shift k”命令,2代表man page的第⼏卷。
分屏操作
分屏操作⼀般使⽤较多,当书写.c和.h⽂件时或者同时参考查看多个⽂件时⾮常⽅便,如下所⽰:
vsp :左右分屏,后跟要打开⽂件名
sp:上下分屏,后跟要打开⽂件名
ctrl+w+w:在分屏的屏幕中进⾏切换。