- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux_使用vi编辑文件.pdf
第8章 使用vi编辑文件
8.1 vi的启动与退出
8.2 vi的两种模式
8.3 基本vi命令
8.4 使用vi查找和替换
8.5 编辑多个文件
8.6 小结
习题
vi的名字取自于visual,意为“直观”,它是一个全
屏幕文本编辑程序。在Linux系统中vi是最常用的
编辑程序,它的文本编辑功能十分强大,但使用起
来比较复杂。初学者可能感到困难,经过一段时间
的学习和使用后,你就会体会到使用vi非常方便。
Linux系统中的vi其实是vim。vi与vim的用法很像,
因为vim是vi的增强版,所以vi的功能vim都有,而
且vim新增了许多vi没有的功能,它比vi容易使用。
本章介绍vi编辑程序的两种工作模式,即命令模式
和输入模式。
8.1 vi的启动与退出
1. vi的启动
输入vi命令后,便进入全屏幕编辑环境,此时
的状态为命令模式。
(1) vi
进入vi的一个临时缓冲区,光标定位在该缓冲
区第1行第1列的位置上。
(2) vi file1
如果file1文件不存在,将建立此文件;如该文
件存在,则将其拷贝到一个临时缓冲区。光
标定位在该缓冲区第1行第1列的位置上。
(3) vi+file1
如果file1文件不存在,将建立此文件;如该文件存在,
则将其拷贝到一个临时缓冲区。光标定位在文件最
后1行第1列的位置上。
(4) vi+Nfile1(N:为数字)
如果file1文件不存在,将建立此文件;如该文件存在,
则将其拷贝到一个临时缓冲区。光标定位在文件第N
行第1列的位置上。
(5) vi+/string file1
如果file1文件不存在将建立此文件;如该文件存在则
将其拷贝到一个临时缓冲区。光标定位在文件中第
一次出现字符串string的行首位置。
2. 退出vi
建议在退出vi前,先按ESC键,以确保当前vi的状态
为命令方式,然后再键入“:”(冒号),输入下列
命令,退出vi。
(1) :w
将编辑缓冲区的内容写入文件,则新的内容就替代
了原始文件。这时并没有退出vi,必须进一步输入
下述命令才能退出vi:
:w filename(存入指定文件)
:q
(2) :wq
即将上面的两步操作可以合成一步来完成,先执行w,
后执行q。
(3) :x和zz(注意:zz前面没有“:”)
功能与(2)等价。
(4) :q!(或:quit)
强行退出vi,使被更新的内容不写回文件中。仅键入
命令:q时,如vi发现文本内容已被更改,将提示用
户使用“:quit”命令退出。
8.2 vi的两种模式
当vi工作在命令模式下,输入的字符被视为执行特定
vi功能的命令;而工作在输入模式下,输入的字符
是编辑文件的正文。命令模式是vi的默认模式,命
令模式下输入英文大小写字母的含义是有区别的。
两种模式的切换见图8.1。
图8.1 模式转换示意图
在命令模式下,你所能进行的操作有移动光标在屏
幕上的位置,标记、删除、移动、复制字符或文本
区块,还可以将文件写入或退出编辑器,亦可设置
编辑环境,如寻找字符串、列出行号等。此外在系
统提示符下输入vi及文件名称后,即进入vi全屏幕
编辑画面(命令模式)。
只有在输入模式下,才可进行文字输入,按ESC键可
以回到命令模式。在命令模式下可按“i”或“a”或
“o”等键进入输入模式。
i——在目前光标前插入所要输入之文字。
a——在目前光标后开始输入文字。
o——在当前光标所在行下新增一空行,并从行首开
始输入文字。
I——插于行首。
A——插于行尾。
O——在当前光标所在行上新增一空行,并从行首开
始输入文字。
按下ESC键随时可返回vi的命令模式。如果不能确定
现在vi是在哪个模式下,按下ESC键以使其在命令
模式下,然后再从这里继续;如果按下ESC键时已
经在命令模式了,系统会鸣叫且屏幕闪一下,通知
你已在命令模式中。
8.3 基本vi命令
1. 移动光标
移动光标h、j、k、l:分别控制光标左、下、上、右
移一格。
Ctrl+b: 上滚一屏。
Ctrl+f: 下滚一屏。
Ctrl+d: 下滚半屏。
Ctrl+u: 上滚半屏。
G: 移到文件最后。
w: 移到下个字的开头。
b: 跳至上个字的开头。
2. 删除
x: 删除当前光标所在后面一个字符。
#x: 删除当前光标所在后面#个字符。例如,5x表示
删除5个字符。
dd: 删除当前光标所在行。
#dd: 删除当前光标所在后面#行。例如,5dd表示
删除自光标算起的5行。
:l,#d: 例如,:1,12d表示删除自行1至行12的文字。
X: 删当前光标的左字符
文档评论(0)