第6章linux vi编辑器的使用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章vi编辑器的使用用户无论是建立文本文件,还是编写程序、配置系统环境,都要用到文本编辑器。Linux操作系统环境下提供了许多文本编辑器,本章重点讲解vi编辑器,启动、保存、退出和其工作模式等内容,并对利用vi编辑器建立、编辑、加工处理文本文件操作方法进行了详细介绍,其中包括文本的插入、修改、恢复、光标移动、字符串检索、全局替换、vi编辑器的设置以及编辑多个文本文件和文本块的移动、复制等内容。6.1认识Linux的文本编辑器Unix提供了一系列的文本编辑器,包括ex、edit和vi。Vi是Unix世界里极为普遍的全屏幕文本编辑器,VIM是它的改进版本ViIMproved的简称。几乎可以说任何一台Unix/Linux机器都会提供这套软件,Vi的原意是“Visual”,它是一个立即反应的编辑程序,也就是说可以立刻看到操作结果,于vi是全屏幕编辑器。6.2vi编辑器的启动、保存和退出vi编辑器的启动vi[选项][filename]存盘及退出:w回车:wfilename回车:q回车:wq回车:q!回车6.3vi编辑器的三种工作模式6.4命令模式下的操作命令模式到输入模式的转换命令插入命令附加命令打开新行命令命令模式下的光标移动基本光标移动命令快速光标定位命令快速光标定位命令移至行首“^”及“0”(零)移至行尾“$”移至指定行“[行号]G”移至指定列“[列号]|”命令模式下的操作~文本删除命令删除字符“x”及“X”删除文本对象“dd”、“D”及“d与光标移动命令的组合”,例:d0回车d5l回车d$回车d3G回车命令模式下的操作复原命令“u”及“U”行结合命令J(大写字母)把光标所在行与下面一行结合成一行。如果在J之前给出一个数字,例如3J,则表示把当前行及其后面的2行(共3行)结合成一行。命令模式下的操作~文本位移命令“”命令将限定正文行向右移动,通常是一个制表位(8个空格)“”命令将限定正文行向左移动。“”命令将光标所在行右移8个空格。“”命令将光标所在行左移8个空格。命令模式下的操作~字符串检索命令向前检索/字符串回车向后检索?字符串回车检索下一个字符串n和N可以重复上一个检索命令。检索特殊字符*^$[/\|需要使用转义形式,即在这些字符前面加上反斜线“\”,使其失去特殊的含义。6.5底行命令模式下的操作定位操作:20回车#光标移到第20行的行首。显示指定文本区:m,np#显示m,n行删除指定文本区:m,nd#删除m,n行给定检索字符串的模式,向前或向后查找,光标停在首先找到的匹配行的行首。底行命令模式下的操作~全局替换命令:g/模式/命令表:g/字符串1/p:g/字符串1/s//字符串2/:g/字符串1/s//字符串2/g:g/字符串1/s//字符串2/gp:g/字符串1/s//字符串2/gc:g/字符串0/s/字符串1/字符串2/g底行命令模式下的操作~全局替换命令:g!/模式/命令表对所有不匹配给定模式的文本行执行给出的命令表。例,:g!/IS/s/this/That/gp:g/^/s///g:s/模式/替代文本/选项例,:s/is/are:s/is/are/g底行命令模式下的操作~插入shell命令vi编辑器中执行shell命令有两种情况:(1)仅执行shell命令,格式如下::!command(2)读取命令的输入并插入,命令格式如下::r!command如:r!ls,会在vi所编写的当前文件光标位置插入所执行ls的输出内容。恢复文件vi在编辑某个文件时,生成一个以.开头,并以.swp结尾的临时文件。vi在正常退出时,该文件被删除,若意外退出,而没有保存文件的最新修改内容,则可以使用恢复命令::recover也可以在启动vi时利用-r选项来恢复文件。如:vi–rfilename。vi的选项设置为控制不同的编辑功能,vi提供了很多内部选项。利用:set命令可以设置选项。:setall:setlines=24:setnumber:setnonumber:setautoindent6.6文本移动和编辑多个文件~缓冲区编辑缓冲区用户在“编辑缓冲区”中的文件副本上进行工作的。当用单一文件名参数调用vi时,就把命名的文件拷贝到临时编辑缓冲区中。编辑器记住指定的文件名,所以它以后能把缓冲区的内容拷回命名文件。在拷回原来文件之前即存盘前,该文件所新编辑操作的内容,是临时存在编辑缓冲区中的。命名缓冲区由字母a~z命名,即vi可以拥有26个字母命名的不同缓冲区。从编辑缓冲区到命名缓冲区(拷贝或剪切)命令格式为:“字母名+行号+操作命令(Y,dd)从命名缓冲区到编辑缓冲区(粘贴)命令格式为为:字母名+操作命令(P,p)删除缓冲区删除缓冲区可以由数字1~9指定。例如,可以指定把包括光标所在行的下5行删除并放到2删除缓冲区命令如下:25dd如果想在粘贴回去,则可以用命令:2p按行操作的文本移动按行拷贝(co命令):1,3co.文本块移动(m命令):1,3m7文件间的文本移动:2,5wfilename:2,5wfilename编辑多个文件vi文件1文件2…:n:efilename#不是依顺序,跳到指定文件:e#例,现正编辑文件ex1.c,需要把另一个文件max.c的6行文本,把它移动插入到ex1.c的指定位置。ENDOFCHAPTER6

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功