Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103137094
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-03-19 22:53:29

  
    任何用户最常做的事要数创建和编辑文件,包括文档、报告和文 
   字,vi(Visual Editor)是一个有效而相对简单的全荧幕编辑, 
   使用vi,只要记著少量基本指令,就可以开始起步,再学习其他 
   更复杂的指令,而系统管理员则使用vi管理和维护系统。 

   vi是包含在SCO System V作业系统中的全荧幕编辑,其实,vi不 
   独存在於SCO UNIX内,而是UNIX内相当普及的文件编辑。开 
   启文件 

   无论是开启新档或修改旧文件,都可以使用vi,所需指令为: 

   $ vi filemane 

   如果文件是新的,就会在荧幕底部看到一个信息,告诉用户正在 
   创建新文件。如果文件早已存在,vi则会显示文件的首廿四行, 
   用户可再用游标(cursor)移动文件。 

   This is what vi looks like. 

   ~ 

   ~ 

   上面是一个经vi开启的模拟文件,一行开始处的波折号(~)表 
   示文件的结尾。指令态与插入态 

   vi使用了两种状态,一是指令态(Command Mode),另一是插入 
   态(Insert Mode)。当vi处於指令态时,打入的内容会视作指令 
   来解释;另一方面,当vi处於插入态时,就可以打入正文(text) 
   给文件。 

   大多数vi指令是单字符,由插入态改变为指令态,指〈Esc〉键; 
   而由命令态转为插入态,则可以使用下面的插入令,直接打入, 
   无需再按〈Return〉键。 

   —指令i在游标处插入正文 

   —指令I在一行开始处插入正文 

   —指令a在游标後追加正文 

   —指令A在行尾追加正文 

   —指令o在游标下面新开一行 

   —指令O在游标上面新开一行 

   要记著一点,在插入态处,不能打入指令,必需先按〈Esc〉键, 
   返回指令态。假若户不知身处何态,也可以按〈Esc〉键,不管处 
   於何态,都会返回指令态。 

   存档及退出 

   在修改文件时,如何存档及退出指定文件都非常重要。在vi内, 
   行使存档或退出的指令时,要先按冒号(:),改变为指令态,用 
   户就可以看见在荧幕左下方,出现冒号(:),显示vi已经改为指 
   令态,可以进行存档或退出等工作。 

   下面就是一些这方面常用的指令。 

   :q!放弃任何改动而退出vi,也就是强行退出 

   :w存档 

   :wq存档并退出vi 

   :x与wq的工作一样 

   :zz与wq的工作一样删除正文 

   删除或修改正文都是利用插入态,故此,下面所提及的指令只需 
   在插入态内,直接选入指令即行。 

   —x删除游标处字符(Character) 

   —nx删除游标处後n个字符 

   —nX删除游标处前n个字符 

   —ndw删除游标处下n个单词(word) 

   —dd删除整行 

   —d$或D删除由游标至该行最末 

   —u恢复前一次所做的删除 

   修改正文 

   当使用vi修改正文,加减字符时,就会采用另一组在插入态操作 
   的指令。 

   — r char由char代替游标处的字符 

   —Rtext〈Esc〉由text代替游标处的字符 

   —cwtext〈Esc〉由text取代游标处的单词 

   —Ctext〈Esc〉由text取代游标处至该行结尾处 

   —cc使整行空白,但保留游标位置,让你开始打入 

   —如删除指令一样,在指令前打入的数,表示执行该指令多少次。 
   正文模式检索 

   要检索文件,必需在指令态下进行。所谓「模式」,就是一个特 
   定字符串,其中可含空格符。 

   —/str〈Return〉向前搜寻str直至文件结尾处 

   —?str〈Return〉往後搜寻str直至文件开首处 

   —n同一方向上重复检索 

   —N相反方向上重复检索 

   —vi缠绕整个文件,不断检索,直至找到与模式相匹配的下一个 
   出现。其他 

   如果要在 vi执行期间,转到shell执行,使用惊叹号(!)执行系 
   统指令,例如在vi期间,列出当前目录内容,可以打入 

   :!If 

   另一方面,用户可以在主目录中创建.exrc环境文件,用set打入 
   选项,每次调用vi时,就会读入.exrc中的指令与设置。下面是 
   .exrc环境文件的实例: 
   set wrapmarging=8 
   set showmode 
   set autoindent
   set number  

 
阅读(371) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~