linuxvi命令详解屏幕文本编辑器Vi

上传人:cn****1 文档编号:457989855 上传时间:2023-07-31 格式:DOC 页数:15 大小:102KB
返回 下载 相关 举报
linuxvi命令详解屏幕文本编辑器Vi_第1页
第1页 / 共15页
linuxvi命令详解屏幕文本编辑器Vi_第2页
第2页 / 共15页
linuxvi命令详解屏幕文本编辑器Vi_第3页
第3页 / 共15页
linuxvi命令详解屏幕文本编辑器Vi_第4页
第4页 / 共15页
linuxvi命令详解屏幕文本编辑器Vi_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《linuxvi命令详解屏幕文本编辑器Vi》由会员分享,可在线阅读,更多相关《linuxvi命令详解屏幕文本编辑器Vi(15页珍藏版)》请在金锄头文库上搜索。

1、linuxvi命令详解:屏幕文本编辑器Vi本章将详细介绍linuxvi命令。文本编辑器是所有计算机系统中最常使用的一种工具。用户在使用计算机的时候,往往需要建立自己的文件,无论是一般的文本文件、数据文件,还是编写的源程序文件,这些工作都离不开linuxvi命令。Linux系统提供了一个完整的编辑器家族系列,如Ed、Ex、Vi和Einacs等,按功能它们可以分为两大类:行编辑器(Ed、Ex)和全屏幕编辑器(Vi、Emacs)。行编辑器每次只能对一行进行操作,使用起来很不方便。而全屏幕编辑器可以对整个屏幕进行编辑,用户编辑的文件直接显示在屏幕上,修改的结果可以立即看出来,克服了行编辑的那种不直观的

2、操作方式,便于用户学习和使用,具有强大的功能。linuxvi命令是Linux系统的第一个全屏幕交互式编辑程序,它从诞生至今一直得到广大用户的青睐,历经数十年仍然是人们主要使用的文本编辑工具,足见其生命力之强,而强大的生命力是其强大的功能带来的。本章中,我们将循序渐进地介绍如何使用linuxvi命令来建立、编辑、显示以及处理文件。(注:文中的大写宇母为shift键+相应的小写字母的组合)linuxvi命令简介linuxvi命令是Visualinterface的简称,它在Linux上的地位就仿佛Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己

3、的需要对其进行定制,这是其他编辑程序所没有的。linuxvi命令不是一个排版程序,它不象Word或WPS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。linuxvi命令没有菜单,只有命令,且命令繁多。Vi有三种基本工作模式:命令行模式、文本输入模式和末行模式。命令行模式任何时候,不管用户处于何种模式,只要按一下键,即可使limixvi命令行模式;我们在shell环境(提示符为$)下输入启动linuxvi命令,进入编辑器时,也是处于该模式下。在该模式下,用户可以输入各种合法的linuxvi命令,用于管理自己的文档。此时从键盘上输入的任何宇符都被当做编辑命令来解释,若输入的

4、字符是合法的linuxvi命令,则linuxvi命令在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是Vi的合法命令,Vi会响铃报警。文本输入模式在命令模式下输入插入命令i、附加命令a、打开命令0、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何宇符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按键即可。末行模式末行模式也称ex转义模式。linuxvi命令和Ex编辑器的功能是相同的,二者主要区别是用户界面。在Vi中,命令通常是单个键,例如i、a、0等;而在Ex中,命令是

5、以按回车键结束的正文行。linuxvi命令有一个专门的“转义命令,可访问很多面向行的Ex命令。在命令模式下,用户按“:”键即可进入末行模式下,此时linuxvi命令会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:,作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令执行完后,limixvi命令自动回到命令模式。例如::1,$s/A/a/g则从文件第一行至文件尾将大写A全部替换成小写a。若在末行模式下输入命令过程中改变了主意,可按键,或用退格键将输入的命令全部删除之后,再按一下退格键,即可使linuxvi命令回到命

6、令模式下。如果要从命令模式转换到编辑模式,可以键入命令a或者i;如果需要从文本模式返回,则按Esc键即可。在命令模式下输入“:”即可切换到末行模式,然后输入命令。linuxvi命令的进入与退出linuxvi命令的进入用户登录到系统中之后,系统给出提示符“$”。在提示符后键入Vi和想要编辑(或建立)的文件名,便可进入Vi。例1键入命令:$viexample.c屏幕显示如下:2222Zz22222example.cNewFile如果只键入Vi,而不带文件名,也可以进入Vi。之后在光标处键入文件内容,退出Vi时,只需在退出命令后输入文件名即可。进入Vi之后,首先进入的就是命令模式,也就是说等待命令输

7、入而不是文本输入。这时输入的宇母都将作为命令来解释。光标停在屏幕第一行首位上(用表示),其余各行行首均有一个符号,表示该行为空行。最后一行也称状态行,显示出当前正在编辑的文件名以及其状态。如本例是NewFile,表示example.c是一个新建的文件。如果example.c文件已在系统中存在,那么输入上述命令后,则在屏幕上显示出该文件的内容,并且光标停在第一行的首位,在状态行显示岀该文件的文件名、行数和字符数。例2键入命令:$viexample.c然后键入:#includemain()intk;for(k=0;k3;k+)add();add()staticintx=0;x+;printf(x二

8、dn,x);zzzzexample.cINewFile注意,在这里我们为了节省篇幅起见,屏幕只显示15行。事实上,初始的显示行数与用户所用终端有关,一般的CRT终端可显示25行。在窗口系统中,显示行数与运行liimxvi命令的那个窗口有关。然而我们可以对显示行数进行设置。例如,在能显示25行的CRT终端上,让Vi只显示15行。设置的方法将在本节后面介绍。当ffllinuxvi命令建立一个新文件时,在进Alinuxvi命令中也可以不给出文件名,当编辑完文件需要保存数据时,再由用户指定文件名。进入linuxvi命令时,用户不仅可以指定一个待编辑的文件名,而且还有许多附加操作。如果希望在进入linu

9、xvi命令之后,光标处于文件中特定的某行上,可在linuxvi命令后加上任选项+n,其中n为指定的行数。例3键入命令:$vi+5examplel.c后,屏幕显示如下:#includemain()intk;for(k=0;k3;k+)add();add()staticintx=0;X+;printf(x二dn,x);example.c,512lines,125characters光标将位于文件examplel.c中的第5行上。如果希望在进入linuxvi命令之后光标处于文件最末行,则只需把命令中附加项后面的数宇n省略掉即可。在进入linuxvi命令时,除了可以指定一个光标起始行号之外,还可以在命

10、令中指定一个模式串,此时在进入linuxvi命令后,光标就处于文件中第一个与指定模式串相匹配的那行上。例4键入命令:$vi+/intexamplel.c屏幕显示如下:#includemain()intk;for(k=0;k3;k+)add();add()staticintx=0;x+;printf(x二dn,x);example.c,512lines,125characters光标将位于文件example1.c中的第3行上。使ffllinuxvi命令可以同时编辑多个文件,只要在进入limixvi命令的命令中写入所要操作的文件即可,还可以使用通配符。例5键入命令:$vi*.cat就可以编辑所有后

11、缀为ca啲文件了。当然,您还可以使用shell中内置的模式匹配来装载文件,这样会更富技巧性。一旦您在命令行中包含了所有的待编辑文件名,就可以在limixvi命令中方便地移来移去。退出Vi当编辑完文件,准备退出Vi返回到shell时,可以使用以下几种方法之*O在命令模式中,连按两次大写字母Z,若当前编辑的文件曾被修改过,则Vi保存该文件后退出,返回到shell;若当前编辑的文件没被修改过,贝lVi直接退出,返回到shell。在末行模式下,输入命令:wlinuxvi命令保存当前编辑文件,但并不退出,而是继续等待用户输入命令。在使用w命令时,可以再给编辑文件起一个新的文件名。例6:wnewfile此

12、时Vi将把当前文件的内容保存到指定的newfile中、而原有文件保持不变。若newfile是一个已存在的文件,则Vi在显示窗口的状态行给出提示信息:Fileexists(use!tooverride)此时,若用户真的希望用文件的当前内容替换newfile中原有内容,可使用命令:w!newfile否则可选择另外的文件名来保存当前文件。在末行模式下,输入命令:q系统退lBlinuxV谕令返回到shell。若在用此命令退出Vi时,编辑文件没有被保存,则Vi在显示窗口的最末行显示如下信息:Nowritesincelastchange(use!toovenides)提示用户该文件被修改后没有保存,然后l

13、inuxvi命令并不退出,继续等待用户命令。若用户就是不想保存被修改后的文件而要强行退出linuxvi命令时,可使用命令:q!linuxvi命令放弃所作修改而直接退到shell下。在末行模式下,输入命令:wqlinuxvi命令将先保存文件,然后退lHlinuxvi命令返回到shell。在末行模式下,输入命令:x该命令的功能同命令模式下的ZZ命令功能相同。linuxvi命令中的行号linuxvi命令中的许多命令都要用到行号及行数等数值。若编辑的文件较大时,自己去数是非常不方便的。为此linuxvi命令提供了给文本加行号的功能。这些行号显示在屏幕的左边,而相应行的内容则显示在行号之后。使用的命令为

14、:在末行方式下输入命令::setnumber需要说明的是,这里加的行号只是显示给用户看的,它们并不是文件内容的一部分。一、Unix编辑器概述编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件。Unix及其相似的ix操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一系列的ex编辑器,包括ex,editzed和vi其中exzedit,ed都是行编辑器,现在已很少有人使用,Unix提供他们的原因是考虑到满足各种用户特别是某些终端用户的需要。值得庆幸的是,Unix提供了全屏幕的Vi编辑器,这使我们的工作轻松不少。不少DOS用户抱怨Vi编辑器不象DOS下的编辑器如e

15、dit那么好用,这是因为Vi考虑到各种用户的需要,没有使用某些通用的编辑键(在各个不同的终端机上他们的定义是不同的,在某些终端机上甚至没有这些键)。而是采用状态切换的方法,但这只是习惯的问题,一旦你熟练的使用上了vi你就会觉得它其实也很好用。虽然Vi采用了状态切换的方法,但电脑的硬件及操作系统多种多样,某些电脑的键盘上没有特定的几个功能键!那麽不就有某些功能不能用了?这个问题在Unix系统上也一样,几乎各大电脑厂商都有自己的Unix系统,而vi的操作方法也会随之有点岀入。这里我们采用PC的键盘来说明vi的操作,但在具体的环境中还要参考相应的资料,这一点是值得注意的。二、Vi入门(-)、进入vi在系统提示字符(如$、#)下敲入viv档案名称,vi可以自动帮你载入所要编辑的文件或是开启一个新文件(如果该文件不存在或缺少文件名)。进入vi后萤幕左方会岀现波浪符号,凡是列首有该符号就代表此列目前是空的。(二)、两种模式如上所述,vi存在两种模式:指令模式和输入模式。在指令模式下输入的按键将做为指令来处理:如输

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号