1 / 23

第二讲 vi 编辑器的使用

第二讲 vi 编辑器的使用. vi 简介. vi 可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制 . 只是一个文本编辑器,不能排版 vi 没有菜单,只有命令 vi 有三种基本工作模式,分别是:命令模式( command mode )、插入模式( insert mode )和末行模式( last line mode ). 三种工作模式. vi 的进入与退出. 进入 vi : 命令 “ vi 文件名 ” 命令 “ vi ” ,在退出 vi 时再指定文件名

lin
Download Presentation

第二讲 vi 编辑器的使用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第二讲 vi编辑器的使用

  2. vi简介 • vi可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制. • 只是一个文本编辑器,不能排版 • vi没有菜单,只有命令 • vi有三种基本工作模式,分别是:命令模式(command mode)、插入模式(insert mode)和末行模式(last line mode)

  3. 三种工作模式

  4. vi的进入与退出 • 进入vi: • 命令“vi 文件名” • 命令“vi”,在退出vi时再指定文件名 • 选项“+n”,表示希望在进入vi之后,光标处于文件中第n行上, • 选项“+”表示希望在进入vi之后光标处于文件最末行。

  5. vi的进入与退出 • 保存文件: • 1.在命令模式下,连按两次大写字母<Z>。 • 2.在末行模式下: :w vi保存当前编辑的文件,但并不退出vi,而是继续等待用户输入命令。 :w <newfile> :w! <newfile> 把当前文件的内容保存到指定的文件newfile中,如果newfile已经存在,则覆盖原有内容。

  6. vi的进入与退出 • 在末行模式下,有四种方法可以退出vi返回到shell: • :q 系统退出vi返回到shell。在用此命令时,若编辑的文件没有被保存,则vi在窗口的最末行给出提示信息。 • :q! vi放弃所作修改而直接退到shell下。 • :wq 先保存文件,然后再退出vi返回到shell。 • :x 该命令的功能与命令模式下的ZZ命令功能相同

  7. 如何进入插入模式 • a (append) 由光标之后加入资料。 • A 由该行之末加入资料。 • i (insert) 由光标之前加入资料。 • I 由该行之首加入资料。 • o (open) 新增一行于该行之下供输入资料之用。 • O 新增一行于该行之上供输入资料之用。

  8. 如何离开插入模式 • 《ESC》 结束插入模式。

  9. 如何进入末行模式 • 先按ESC键 • : • / • ?

  10. VI环境的设定 • set nu: 添加行号显示 • set nonu: 取消行号显示 • set autoindent: 自动缩进 • set noautoindent: 取消自动缩进

  11. 搜寻 • 在vi中可搜寻某一字串,使光标移至该处。 • /字串 往光标之后寻找该字串。 • ?字串 往光标之前寻找该字串。 • n 往下继续寻找下一个相同的字串。 • N 往上继续寻找下一个相同的字串。

  12. 取消前一动作(Undo) • 即复原执行上一指令前的内容。 • u 恢复最后一个指令之前的结果。 • U 恢复光标该行之所有改变。

  13. 编辑多个文件 • vi亦提供同时编辑多个文件的功能,方法如下: • #vi file1 file2 .. • 当第一个文件编辑完成后,可利用『:w』将该缓冲区存档,而后再利用 『:n』载入下一个文件。 • 同时vi多个文件时,CTRL-SHIFT-6回到上一个文件,在本次vi的文件和上次vi的文件之间切换。也可以使用:e#进行切换。

  14. 字串搜寻与替换 • s(substitute)指令可搜寻某行列范围。 • g(global)指令则可搜寻整个编辑缓冲区的资料。 • :1,%s/old/new/g 将文件中所有的“old”改成“new”。 • :10,20s/old/new/ 将第10行至第20行资料的“old”改成“new”。 • :%s/old/new/g 将编辑缓冲区中所有的“old”改成“new”。

  15. 字串搜寻与替换 • :1,%s/^/string1 在文件的第一行至最后一行的行首插入“string1”。 • :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。 • :1,%s/word1/word2/gc 从第一行到最后一行寻找word1 字串,并将该字串替换为 word2 。需要逐一确认。

  16. vi的编辑操作命令 • 在vi中“字”有两种含义: • 广义上,字是两个空格之间的任何内容。 • 狭义上,字是指英文单词、标点符号和非字母字符。 • 句子被定义为是以句号“.”、问号“?”和感叹号“!”结尾,且其后跟着至少一个空格或一个换行符的字符序列。 • 段被定义为以一个空白行开始和结束的片段

  17. 在当前行移动光标的命令 • h 将光标左移一格。 • l 将光标右移一格。 • j 将光标下移一格。 • k 将光标上移一格。 • 0 把光标移到当前行的第一个字符处。 • $ 把光标移到当前行的最后一个字符处。

  18. 在行之间移动光标的命令 • Ctrl + f向后滚一页。 • Ctrl + d向后滚半页。 • Ctrl + b向前滚一页。 • Ctrl + u向前滚半页。 • Ctrl + e屏幕向下滚一行。 • Ctrl + y屏幕项上滚一行。 • nG 将光标移至行号所指定的行的行首

  19. 在文本块间移动光标的命令 • ) 由光标所在位置至下一个句子的第一个字元。 • ( 由光标所在位置至该句子的第一个字元。 • { 由光标所在位置至该段落的最后一个字元。 • } 由光标所在位置至该段落的第一个字元。

  20. 屏幕上移动 • H命令:该命令将光标移至屏幕首行的行首.若在H命令之前加上数字n,则将光标移至屏幕第n行的行首。 • M命令: 该命令将光标移至屏幕显示文件的中间行的行首。 • L命令:该命令将光标移至屏幕显示文件的底行的行首。 • G命令:该命令将光标移至该文件的最后一列

  21. 命令模式下的文本编辑/文本的删除 • 字符删除命令: x dh • 字和行删除命令 dw db dd d$ d0 <n>dd • 文本块删除命令: d) d( d} d{ • 相对屏幕删除: dH dM dL

  22. 删除操作 • x:删除光标所在的文字 • nx:删除光标后面的n个字符 • X:删除光标前面的一个字符 • nX:删除光标前面的n个字符 • dd:删除光标所在行 • ndd:删除光标所在行向下数n行

  23. 复制 • 命令方式下输入yy或nyy,表示复制当前行或当前行开始的连续n行,n是一个具体的整数。 • 将光标移到要复制的地方,按p键粘贴。

More Related