380 likes | 513 Views
第七章. vi 编辑器. 第七章 vi 编辑器. 第七章 vi 编辑器 (2). 本章要点. 掌握如何用 vi 编辑文件 掌握 vi 参数的使用. 7.1 vi 编辑器概述. vi 编辑器是功能强大的文本编辑工具. vi 编辑器是全屏编辑器. vi 编辑器是字符界面,非图形界面. 编辑文本时,将在 /tmp 目录下产生临时文件. vi 编辑器概述 (2). vi 和它相关的编辑器. vi view vedit ex , ed edit. 功能完备,全屏幕文本编辑器 用来查看文本,用 ! 才能强行保存修改
E N D
第七章 vi 编辑器
第七章 vi 编辑器(2) 本章要点 掌握如何用vi 编辑文件 掌握vi 参数的使用
7.1 vi 编辑器概述 vi 编辑器是功能强大的文本编辑工具 vi 编辑器是全屏编辑器 vi 编辑器是字符界面,非图形界面 编辑文本时,将在/tmp目录下产生临时文件
vi 编辑器概述(2) vi 和它相关的编辑器 vi view vedit ex,ed edit 功能完备,全屏幕文本编辑器 用来查看文本,用!才能强行保存修改 早期的vi 版本,功能不是很强大 vi 编辑器的子集,行文本编辑器 精简版的ex编辑器
vi的运行方式 vi 编辑器有三种运行方式 • 编辑方式 • 命令方式 • 末行方式 命令方式可以复制、查询、保存、退出等文本编辑操作 编辑方式进行添加、修改等文本编辑操作
vi的运行方式(2) 进入 shift+zz 退出 $ vi vifile q 输入 : 命令方式 末行方式 执行完末行命令 输入i或a 按<Esc>键 编辑方式
7.2 基本vi编辑操作 启动vi 编辑器 编辑文本 删除文本 移动光标 退出vi 编辑器
启动vi编辑器 用vi 命令启动vi 编辑器,命令语法: $ vi 文件名 若文件名不存在,则创建这个文件名的新文件 若文件名存在,则编辑这个文件名的文件
启动vi编辑器(2) vi 编辑器界面: $ vi vifile ~ ~ ~ ~ ~ ~ "vifile" [New file]
编辑文本 启动vi 编辑器后,进入的是命令模式 键入下面字符进入编辑模式: a在光标后添加(add)文本 i在光标前插入(insert)文本 A在光标所在行末添加文本 I在光标所在行首插入文本
编辑文本(2) vi 编辑器中编辑文本界面: This file is being created using the vi editor Welcome……… ~ ~ ~ ~ ~ "vifile" [New file]
删除文本 在命令模式下删除文本: x删除光标所在的字符 dw删除光标所在的单词(word) d$删除最后一行 d0删除第一行 dd删除一行 :20,40d删除从20行到40行 u撤销操作
移动光标 k、H、1G <ctrl+b> 向上箭头 h、b、B 0 向左箭头 l、w、W $ 向右箭头 j、L、G <ctrl+f> 向下箭头
移动光标(2) 在命令模式下移动光标,在一行内移动光标: 向左箭头或h键,向左移动一个字符 向右箭头或l键,向右移动一个字符 0移动到行首 $移动到行末 :16移动到第16行
移动光标(3) 在命令模式下移动光标,在一单词间移动光标: w移动到下一个狭义单词的开头 W移动到下一个广义单词的开头 b移动到前一个狭义单词的开头 B移动到前一个广义单词的开头 e移动到下一个狭义单词的末尾 E移动到下一个广义单词的末尾
移动光标(4) 广义单词: 用空格分开的任何内容,例如: printf(“hello world!\n”),这里有两个广义单词:一个是printf(“hello,另一个是world!\n”) 狭义单词: 标点和非字符(如!、@、\ 、$等)都被当成一个狭义单词,例如: printf(“hello world!\n”),共有11个狭义单词
移动光标(5) 在命令模式下移动光标,在一屏幕内移动光标: 向上箭头或k键,移动到上一行 向下箭头或j键,移动到下一行 H移动到屏幕的第一行 M移动到屏幕的中间一行 L移动到屏幕的最后一行
移动光标(6) 在命令模式下移动光标,在全文件内移动光标: 1G移动到全文的第一行 45G移动到全文的第45行 G移动到全文的最后一行 在全文件内,翻屏移动光标: <ctrl+f>向前翻屏 <ctrl+b>向后翻屏
退出vi编辑器 要退出vi 编辑器,必须先按<Esc>键进入命令模式 在命令模式下,键入下面字符退出编辑器: :q退出编辑器 :q!不保存修改,强行退出编辑器 :x保存修改,并退出编辑器 :wq保存修改,并退出编辑器 <shift+zz>保存修改,并退出编辑器
退出vi编辑器(2) 退出vi 编辑器的界面: This file is being created using the vi editor Welcome……… ~ ~ ~ ~ ~ :wq
7.3 其他vi编辑操作 查找关键词 替换文本 复制、剪切和粘贴文本 在vi 中执行AIX命令
查找关键词 查找关键词,必须先进入命令模式 键入下面字符查找关键词,示例查找being关键词: /being从光标所在的位置向下查找 ?being从光标所在的位置向上查找 n用/或?查找后,若文本中有多个being 关键词,向下查找下一个 N用/或?查找后,若文本中有多个being 关键词,向上查找下一个
查找关键词(2) 查找being关键词的vi 界面: This file is being created using the vi editor Welcome……… ~ ~ ~ ~ ~ /being
替换文本 示例将全文的the单词替换为 the one的vi 界面: This file is being created using the vi editor Welcome to using the vi editor... ~ ~ ~ ~ ~ :g/ the /s// the one /g
替换文本(2) :g/ the /s// the one /g 下面对上面语法做注解: g/ the /查找文本中所有the的关键词 S// the one /替换成the one /g替换所有(global)的关键词
复制、剪切和粘贴文本 在命令模式下复制、剪切和粘贴文本: yy复制光标所在的行 dd剪切光标所在的行 10dd剪切光标所在的下面10行 p在光标所在行的下一行粘贴复制的文本 P在光标所在行的上一行粘贴复制的文本 J合并两行文本 u撤销操作
在vi中执行AIX命令 示例在vi 中执行ls 命令的vi 界面: This file is being created using the vi editor Welcome……… ~ ~ ~ :!ls doc file tmp [Press return to continue] 在命令模式下键入:!命令,将执行AIX命令
7.4 vi的参数 vi 的参数如下: :set all :set autoindent/noautoindent :set number/nonumber :set list/nolist :set showmode/noshowmode :set tabstop
vi的参数(2) vi 的设置文件是$HOME/.exrc,把vi的参数写入这个文件,以后用户启动vi 编辑器,这些参数将自动生效 在vi 编辑器中,要生效某个参数,要先输入“:” 在$HOME/.exrc文件中,不用“:”,直接set
命令行编辑 为了方便用户重复历史命令,AIX可采用vi 编辑器进行命令行编辑: 用户先执行下面命令: $ set –o vi 先按Esc键后,用 k 和 j 键,用户可以往返重复历史命令,并可用vi 子命令编辑历史命令行
7.5 测试题 1、 vi编辑器,键入哪个字符可进入编辑模式?(多选) • a • x • i • dd
测试题 2 2、 vi编辑器,撤销前面的命令操作是哪个键? • q • u • J • $
测试题 3 3、 vi编辑器,用什么命令转到第13行? • :13 • /13 • /13/ • ?13
测试题 4 4、 哪个命令退出vi编辑器,并保存数据?(多选) • q! • yy • ZZ • :wq • Quit • !save
测试题 5 5、 vi编辑器,用?在文件中查找关键词,下面描述正确的是哪个? • 从文件开头开始查找到文件尾部 • 从文件尾部开始查找到文件开头 • 从光标所在的位置向下查找 • 从光标所在的位置向上查找
测试题 6 6、如下所示,为什么用vi编辑器打开某些文件是乱码? $ pwd /usr/lib/objrepos $ vi fix ^M犀^A糬M犀^B^Pd^E^AH^B<?T^B^T^L^P^B^... $ vi /var/adm/wtmp LOGINdtlft0^B€4^F?热鋝ystem boot^B...
测试题答案 1、A、C 2、B 3、A 4、C、D 5、D 6、vi命令只能编辑文本文件