




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、College of Information Science and Engineering Shandong Agricultural University VI编辑器的使用2 2 1. 了解关于vi的基本知识; 2. 熟悉vi的三种工作模式; 3掌握vi下的文本编辑方法; 4掌握vi操作的常用技巧。学习目标学习目标3 31. VI的三种工作模式2. VI的启动与保存退出3. VI的文本编辑4.其他模式下的操作主要内容主要内容4 4系统配置文件、shell脚本文件等都是文本文件,编辑它们都要使用文本编辑器。在Linux系统中有多种文本编辑器,其中既有字符界面如的VI、EMACAS等,也有图形
2、界面的如“附件”菜单下的“文本编辑器(gedit)”等,用户可以根据自己的喜好选择使用。 学习vi的方法:vi的命令太多且难以记忆,而实际上真正经常使用的命令并不是太多,只要掌握几个关键的并加以适当练习很快就可上手使用vi。5 5为什么选择VI就使用的方便性而言,有比vi更好的编辑器,还有图形化的gedit,为什么还要用vi?历史久远,功能强大,在有些情况下系统中能够找到的编辑器只有vi;没有图形支持的情况下,如终端远程连接到服务器或者嵌入式设备,修改或者编制代码或者查看文件就需要vim,vi等工具了。 用户一旦熟悉后,使用非常方便;系统管理员使用正则表达式可以极大地提高工作效率,而学习vi也
3、是掌握正则表达式的有效途径。6 61.VI的三种工作模式 命令模式 启动VI默认进入命令模式。此时界面不能编辑,只能接受命令(键入的命令是看不到的) 可进行文件的保存,退出,文本的删除、复制、搜索等操作。 输入模式(编辑模式) 命令模式下用编辑类命令i(sert),a(ppend),o,s等均可进入该模式。 按esc返回命令模式。 底行命令模式 实际上也是命令模式的一种,在命令模式下输入冒号进入一个命令行,可显示地输入命令(所以有些书认为是两种工作模式)。三种模式可自由切换,一般切换命令就是操作的英文单词的首字母7 7文本输入文本输入模式模式命令模式命令模式(默认)(默认)底行命令底行命令模式
4、模式按按ESC键键按按A,I,S,C,O等可做不同插等可做不同插入操作,同时入操作,同时转换模式转换模式按按“:”键键命令执行后自命令执行后自动返回(除退动返回(除退出命令)出命令)三种模式间的转换关系8 8关于VI的版本 由于vi的版本不同,其命令格式、功能和用法会有一些差别。多数发行版上安装的是传统vi的增强版本vim(VI Improved)。输vi命令可看到版本提示信息。 如果编辑模式下按方向键出字母,用whereis vi查看会发现安装的一般是Vim-tiny。可再安装一下,执行:sudo apt-get install vim9 92.VI的启动与保存退出【启动】执行vi命令即可如
5、:vi my.txt 如果文件存在,则vi显示文件内容并等待用户的命令。如果指定的文件不存在,则vi将告知用户这是未命名的文件,并进入一个空白的界面。 启动vi后默认处于命令模式。常用的启动参数(更多参数参考vi -help): -b以二进制模式显示。 -d打开多个文件,并显示文件之间的不同之处。 -m被修改后的文件不允许被写入硬盘。 -M禁止对文件进行修改。 -R以只读方式打开文件 -e以ex(一种UNIX系统中常见的文本编辑器)的操作方式运行vi。vi R /etc/passwd 以只读方式打开文件passwd在在linux下后下后缀名没有什么缀名没有什么强制要求。对强制要求。对可执行文件
6、,可执行文件,系统一般从文系统一般从文件的属性来区件的属性来区分。对源代码分。对源代码文件,一般要文件,一般要给出合适的后给出合适的后缀,缀,gcc通过通过后缀来区别输后缀来区别输入文件的类别入文件的类别。 1010【保存退出】(命令行模式下)::q在文件未作修改的情况下退出。:q!强制退出,不保存对文件所做的修改。:wq保存文件修改并退出。或“:x”也可。:w保存文件。:w file将正文内容保存到file中。:nw file保存第n行到file中。:m,nw file保存第m行至第n行到file中。:r file读取file的内容输出到正文光标所在位置。:recover恢复文件。命令模式下
7、也可退出:ZZ或ZQ(保存或不保存退出)11113.文本编辑【显示行号】底行命令模式下输入set nu可设置vi显示行号。命令模式转编辑模式的命令有: i 切换到插入模式,在光标左侧输入正文。 a切换到插入模式,在光标右侧输入正文。 o切换到插入模式,在光标所在行的下一行增添新行。 O切换到插入模式,在光标所在行的上一行增添新行。 I 切换到插入模式,在光标所在行的开头输入正文。 A切换到插入模式,在光标所在行的末尾输入正文。 s 切换到改写模式,用输入的正文替换光标指向的字符。12124、其他模式下的命令操作命令的相关符号说明: 若无特殊说明,n或m表示数字;c表示一个字符;str表示一个字
8、符串;file表示文件名。如:nd 表示删除n行。 vi中存在一些特殊字符表示行号,“.”表示当前光标所在行,$表示末尾行。准备练习文件:准备练习文件:cat n /etc/passwd vitest利用重定向,新建一个有行号信息的文本利用重定向,新建一个有行号信息的文本内容的文件。内容的文件。1313【光标移动】命令模式下 k光标上移一行。 j光标下移移行。 h光标左移一个字符。 l光标右移一个字符。 数字0/$光标移动到行首/尾。 w/b行内移动到下/前一个词的开头。 e行内移动到单词的结尾。 移动到所在行的一个非空字符。 H光标移到屏幕顶行。 M光标移到屏幕中间。 L光标移到屏幕底行。
9、nG:移动到第n行行首。(或用 :n) k kh l h l j j1414【删除】命令模式下 x 删除光标所在字符 dw/db 删除光标后/前一单词 dd删除光标所在的行 s删除光标所在字节,并进入输入模式#表示数字 #x 删除几个字符,如3x #dw 删除几个单词,如3dw表示删除三个单词 #dd 删除多个行,如3dd 表示删除光标行及光标的下两行 d$ 删除光标到行尾的内容d d光标键:光标键:左:删除光标前面的字符;左:删除光标前面的字符;右:删除光标所在的字符;右:删除光标所在的字符;上:将当前行与上一行删除;上:将当前行与上一行删除;下:当前行与下一行删除下:当前行与下一行删除nd
10、nd上下光标键上下光标键: :删除当前行之上、下的几行文删除当前行之上、下的几行文本(包括当前行)本(包括当前行)1515【撤销与重做】命令模式下 u撤销前一跳命令产生的结果。 .重做最后一条命令的操作。1616【文本复制、粘贴】命令模式下 复制命令:y yy复制整行 yw复制光标所在的单词 nyw复制包括光标所在的n个单词 nyy复制包括当前行在内的n行 粘贴命令 p当前光标后/行下粘贴。1717【多个文件间操作】底行模式1)多文件间复制 vi file1 file2同时打开两个文件。 默认在第一个文件file1的界面下。5yy,复制从当前光标行开始向下五行。 :next 切换到下一个打开文
11、件file2(也可用:n切换)。移动光标到合适位置,p,复制。 :prev 切换到上一个打开文件file1。18182)文件间读写 :r file_name 可导入文件内容添加到当前文件的光标所在行后 :1,5 w file_name 将当前文件第1行到5行的内容保存到文件file_name中。 :.,$-2 w file_name 当前行到倒数第三行的内容写入file_name文件中。 使用或重定向符号,以免指定文件存在时vi的“File exists”的报错。1919【查找替换字符串】底行模式:/string向后搜索指定的字符串,按n键继续找下一个。:?string向前搜索指定的字符串,按
12、n键继续找下一个。:s/str1/str2/用字符串str2替换当前行中首次出现的字符串str1。:s/str1/str2/gc用字符串str2替换当前行中所有出现的字符串str1,并依次提示是否替换。 :%s/str1/str2/g把文档中所有str1替换成str2;:m,n s/str1/str2/g用str2替换第m行到第n行所有出现的字符串str1。:.,$-2 s/str1/str2/g用str2替换当前行到倒数第3行所有出现的字符串str1。:s#str1/#str2/#替换当前行第一个str1/为str2/2020【执行其他shell命令】底行模式用户在编辑文本文件过程中,可以在
13、不退出vi的情况下执行shell命令,如:!ls l:!mount /dev/sda1 /mnt作作 业业1. 复制复制passwd文件,对该文件做下页要文件,对该文件做下页要求的练习。求的练习。2. 用用vi建立一个文件,输入一篇英文自建立一个文件,输入一篇英文自我介绍,命名为我介绍,命名为myinfo.eng保存到用保存到用户主目录下。户主目录下。3. 用用vi新建一个文件,录入你简要的个新建一个文件,录入你简要的个人信息,包括姓名、人信息,包括姓名、Email、座右铭等、座右铭等信息,保存成信息,保存成“/myinfo.txt”,并将,并将myinfo.eng的内容添加到的内容添加到my
14、info.txt文件的尾部。文件的尾部。2222案例练习1. 请在 /tmp 这个目录下建立一个名为 vitest 的目录; 2. 进入 vitest 这个目录当中; 3. 将 /etc/passwd 拷贝到本目录底下4. 使用 vi 开启本目录下的 passwd 这个文件; 5. 在 vi 中设定一下行号; 6. 移动到第 20 行,向右移动 20 个字符7. 移动到第一行,并且向下搜寻一下“backups”这个字符串,请问他在第几行? 8. 接着下来,我要将 10 到 20 行之间的 bin 改为 BIN,并且一个一个挑选是否需要修改,如何下达指令? 9. 修改完之后,突然反悔了,要全部复原,有哪些方法? 10. 我要复制10 到 20 行这十行的内容,并且贴到最后一行之后; 11. 删除 10 到 20 行之间的 20 行; 12. 将这个文件另存成一个 passwdback的文件; 13. 到第 20 行,并且删除 15 个字符; 14. 储存后离开23231. mkdir /tmp/vitest2. cd /tmp/vitest 3. cp /etc/man.config . 4. vi man.config 5. :set nu 6. 先按下 :20 再按下 20 7. 先执行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高锰酸钾制取氧气的课件
- 电路板干货知识培训课件
- 电解电容基础知识培训课件
- 高血压家庭应急知识培训课件
- 基建输变电工程监理框架合同
- 电脑反应慢微讲堂课件
- 电脑前端知识培训课件
- 电能表基础知识培训总结课件
- proe考试试题及答案
- 电网拆解知识培训课件
- 全球热泵产业发展报告2025
- (2025年标准)动火安全协议书
- 2026届广州市高三年级阶段训练(8月市调研摸底) 数学试卷(含答案解析)
- 水厂化验室知识培训课件
- 动物防疫检疫试题(附答案)
- 沙石码头经营方案(3篇)
- 2025年粉笔辅警考试题库
- 实验学校物业管理服务项目方案投标文件(技术方案)
- 2025个人房屋租赁合同范本下载
- 水声传感器技术研究与应用
- 督脉刮痧配合刺血治疗急性乳腺炎
评论
0/150
提交评论