第4讲 文本编辑器Vim_练习题
第04章_Vim编辑器PPT课件
22
4.3 末行模式命令
1. 退出命令 2. 显示和取消行号 3. 行号与文件 4. 字符串搜索 5. 正文替换 6. 删除正文 7. 恢复文件 返回本章目录 使用前请先按 ESC 键确定在命令模式下按 ‘:’ 或 ‘/’
或 ‘?’ 叁键即可进入末行模式
精选PPT课件
23
4.3 末行模式命令
1. 退出命令
ZZ在命令模式下可以用 ZZ 命令退出 vi 编 辑程序,该命令保存对正文所作的修改,覆 盖原始文件。
:wq或:x 先保存再退出vi :w或 :w filename 保存/保存为filename名
精选PPT课件
14
4.1 Vim编辑器简介
可按<Esc>键,或用退格键将输入的命 令全部删除之后,再按一下退格键,即 可使 vi 回到命令模式下。
精选PPT课件
15
4.1 Vim编辑器简介
Vi编辑器的三种工作模式之间的转换如下:
Linux
退出Vi
Vi/vi文件
P108
文本插入命令 i、I、a、A、o、O 等
精选PPT课件
3
4.1 Vim编辑器简介
4.1.0 gedit 图形化文本编辑器 4.1.1 Vim编辑器概述 4.1.2 Vim编辑器的工作模式 返回本章目录
精选PPT课件
4
4.1 Vim编辑器简介
4.1.0 gedit 图形化文本编辑器
点击“应用程序”→“附件”→ “文本编辑 器”。
精选PPT课件
13
4.1 Vim编辑器简介
末行模式
在 vi 中,命令通常是单个键,如 i。在 命令模式下,用户按 “:” 键即可进入末 行模式下,此时 vi 会在屏幕的最后一行 显示一个“:”作为末行模式的提示符, 等待用户输入命令。多数文件管理命令 都是在此模式下执行的(如把编辑缓冲 区的内容写到文件中等)。末行命令执 行完后,vi 自动回到命令模式。
vi练习
1. 在屏幕上单击鼠标右键,选择“打开终端”进入shell终端环境。
2. 在终端#提示符后面输入命令“mkdir /tmp/vitest”,系统将会在 /tmp 这个目录下建立一个名为 vitest 的目录;3. 继续在终端输入“cd /tmp/vitest”命令,进入 vitest 这个目录当中;4. 使用“cp /etc/man.config.”(注意最后一个空格后有一个英文的点号,代表复制到当前文件夹并保留原文件名)命令将 /etc/man.config 复制到当前目录底下。
5. 使用vi编辑器打开/tmp/vitest/man.config这个文件6.Q:在 vi 中设定显示行号;A:『:set nu』然后你会在画面中看到左侧出现数字即为行号。
7.Q:移动到第 58 行,向右移动 40 个字符,请问你看到的双引号内是什么目录?A:先按下『58G』(或:58)再按下『40→』(或40l)会看到『/dir/bin/foo』这个字样在双引号内;8.Q:移动到第一行,并且向下搜寻一下『 bzip2 』这个字符串,请问他在第几行?A:先执行『1G』或『:1』或『gg』后,直接输入『/bzip2』,则会去到第 137 行才对!9.Q:接着下来,我要将 50 到 100 行之间的『小写 man 字符串』改为『大写 MAN 字符串』,并且一个一个挑选是否需要修改,如何下达指令?如果在挑选过程中一直按『y』,结果会在最后一行出现改变了几个 man 呢?A:直接下达『 :50,100s/man/MAN/gc 』即可!若一直按『y』最终会出现『在 23 行内置换25 个字符串』的说明。
10.Q:修改完之后,突然反悔了,要全部复原,有哪些方法?A:(1)简单的方法可以一直按『 u 』回复到原始状态,(2)使用不储存离开『 :q! 』之后,再重新读取一次该档案;11.Q:我要复制 65 到 73 这九行的内容(含有MANPATH_MAP),并且贴到最后一行之后;A:『65G』然后再『 9yy 』之后最后一行会出现『复制九行』之类的说明字样。
GVIM_使用
在insert模式下,C-R (register) 插入register里的内容,一个有趣的reg是"=".假设你想输入123K的具体字节数,不用打开计算器,试试这个“=1024*123”,“125952”就出来了!另外在命令行里C-R C-W和C-R C-A是必用的技巧,它们将光标下的和考到命令行里,省了你无数的typing。
3. C-X (auto complete)在insert模式下,C-X C-P/N/L/F等自动完成前面的词、行、文件名等,是编程时必用的命令。
其中C-P和C-N可以不用C-X。
4. [p & ]p (smart paste)paste同时自动根据目标行的缩进调整来源行的缩进。
在copy代码段的时候非常有用。
5. C-O (fast out, fast in)在insert模式下,用C-O后可以执行一个normal命令,然后立即返回insert模式,省去了用ESC的麻烦。
6. [I (fast grep )[I显示文件中包含光标下的所有行。
我常用来浏览某个id在程序中的引用情况。
还有很多相关的命令::h include-search7. object-selectiw, aw, ib, i], i} ... 都非常有用!看help吧:h object-select先写这么多,以后再补充吧。
例如你想把所有的"..."形式的串替换成'...'的形式但引号里的内容不变你就可以用%s/"\(.*\)"/'\1'/来做上面这个正则表达式"\(.*\)"里\用来表示()是元字符第一个在括号里的被匹配的串就可以被\1来代表, 以后依次是\2 \3。
顺便说一句,我到现在还不知道怎么限制vim里正则表达匹配的贪婪算法。
------------------------------------里面说的非贪婪匹配是\{-},也就是%s/"\(.\{-}\)"/'\1'/g\ 太多了可以用\v,%s/\v"(.{-})"/'\1'/g详细:h /\{-:h \v另外和perl 正则表达式的区别在:h perl-patterns把 替换为~字符~~~~~数字和点我用s/\(^.*)\(\.\d*.\)com/\/结果为请问有没有好点儿的办法?谢谢☆─────────────────────────────────────☆alphatan ( C ) 于(Tue Aug 10 09:27:19 2004) 提到:【在qiaolin (风儿) 的大作中提到: 】: 把 替换为: ~字符~~~~~数字和点: 我用s/\(^.*)\(\.\d*.\)com/\/1. \(^.*\) 一下子把整个字符串吞进去了. \1 = 2. 遇到com把com从\1中吐出来. \1 = aaaaa.20300.2000.3. 遇到.把com前面的\.吐出来\1 = aaaaa.20300.20004. 遇到\d*, 再把随后的2000吐出来\1 = aaaaa.20300.5. 遇到\., 把.也呕出来了. \1 = aaaaa.20300所以, 得到你要的结果.可以用\{-}进行非贪婪匹配.但为什么不直接把数字跟它们的点去掉呢?s/[0-9.]\ //g: 结果为: 请问有没有好点儿的办法?谢谢☆─────────────────────────────────────☆qiaolin (风儿) 于(Tue Aug 10 09:36:27 2004) 提到:谢谢大侠,有问题请教:贪婪匹配的顺序是怎样的呢?在这个例子中,先匹配第一个pattern,再从最后面的pattern一个一个“吐”出来?【在alphatan ( C ) 的大作中提到: 】: 1. \(^.*\) 一下子把整个字符串吞进去了. \1 = : 2. 遇到com把com从\1中吐出来. \1 = aaaaa.20300.2000.: 3. 遇到.把com前面的\.吐出来\1 = aaaaa.20300.2000: 4. 遇到\d*, 再把随后的2000吐出来\1 = aaaaa.20300.: 5. 遇到\., 把.也呕出来了. \1 = aaaaa.20300: 所以, 得到你要的结果.: 可以用\{-}进行非贪婪匹配.: 但为什么不直接把数字跟它们的点去掉呢?: s/[0-9.]\ //g这里没有这样用是因为aaaaa也可能是a123a,可不可以用/w呢?在查找、替换命令使用以下正则表达式元字符,功能强大。
4vi
将old_user登陆名改为new_user 将指定的用户锁定 对锁定的用户进行解锁 更新使用者新的登入目录。
-l testA testB -L test -U test -d /home/test testA
groupadd
添加一个组 语法: groupadd [-g] groupname 参数说明: -g 自行设定 GID 的大小 注:该GID大于500 范例:
修改已有用户的信息 语法:usermod [-ldLU] [/path] [username1] [username2] 参数说明: –l -L -U -d 范例:
[root@localhost ~]#usermod [root@localhost ~]#usermod [root@localhost ~]#usermod [root@localhost ~]#usermod
userdel
删除用户 语法:userdel [-r] username 参数说明: -r 连同用户的家目录一起删除,默认情况下是不删除的。 范例:
[root@localhost ~ ]#userdel testa [root@localhost ~ ]#userdel -r testb
usermod
:1,$s/word1/word2/g
:1,$s/Li/li/gc :1,$s/^/#/g
一般模式---删除、复制与粘贴
x,X nx dd ndd yy nyy p,P J u x为向后删除一个字符,X为向前删除一个 字符 向后删除n个字符 删除光标所在的那一行 删除光标所在行向下n行 复制光标所在行 复制光标所在行的向下n行 将复制的数据粘到下一行(p)或上一行(P) 将光标所在行与下一行的数据合成一行 恢复上一次的操作
vim练习120200417
vim练习1202004171. 请在 /tmp 这个⽬录下创建⼀个名为 vitest 的⽬录;2. 进⼊ vitest 这个⽬录当中;3. 将 /etc/man_db.conf 复制到本⽬录下⾯(或由上述的链接下载 man_db.conf ⽂件);4. 使⽤ vi 打开本⽬录下的 man_db.conf 这个⽂件;5. 在 vi 中设置⼀下⾏号;6. 移动到第 43 列,向右移动 59 个字符,请问你看到的⼩括号内是哪个⽂字?7. 移动到第⼀列,并且向下搜寻⼀下“ gzip ”这个字串,请问他在第⼏列?8. 接着下来,我要将 29 到 41 列之间的“⼩写 man 字串”改为“⼤写 MAN 字串”,并且⼀个⼀个挑选是否需要修改,如何下达指令?如果在挑选过程中⼀直按“y”,结果会在最后⼀列出现改变了⼏个 man 呢?9. 修改完之后,突然反悔了,要全部复原,有哪些⽅法?10. 我要复制 66 到 71 这 6 列的内容(含有MANDB_MAP),并且贴到最后⼀列之后;11. 113 到 128 列之间的开头为 # 符号的注解数据我不要了,要如何删除?12. 将这个⽂件另存成⼀个 man.test.config 的⽂件名;13. 去到第 25 列,并且删除 15 个字符,结果出现的第⼀个单字是什么?14. 在第⼀列新增⼀列,该列内容输⼊“I am a student...”;15. 储存后离开吧!答案前提(先su root打开权限)1. “mkdir /tmp/vitest”2. “cd /tmp/vitest”3. “cp /etc/man_db.conf .”4. “/bin/vi man_db.conf”5. “:set nu”然后你会在画⾯中看到左侧出现数字即为⾏号。
6. 先按下“43G”再按下“59→”会看到“ as ”这个单字在⼩括号内;7. 先执⾏“1G”或“gg”后,直接输⼊“/gzip”,则会去到第 93 列才对!8. 直接下达“ :29,41s/man/MAN/gc ”即可!若⼀直按“y”最终会出现“在 13 列内置换 13 个字串”的说明。
vim练习
Vim 练级攻略当你安装好一个编辑器后,你一定会想在其中输入点什么东西,然后看看这个编辑器是什么样子。
但vim不是这样的,请按照下面的命令操作:启动Vim后,vim在Normal模式下。
让我们进入Insert模式,请按下键i 。
(陈皓注:你会看到vim–左下角有一个insert–字样,表示,你可以以插入的方式输入了)“”此时,你可以输入文本了,就像你用记事本一样。
如果你想返回Normal模式,请按ESC键。
现在,你知道如何在Insert和Normal模式下切换了。
下面是一些命令,可以让你在Normal模式下幸存下来: i→Insert模式,按ESC回到Normal模式.x→ 删当前光标所在的一个字符。
:wq→ 存盘+ 退出(:w存盘,:q退出) (陈皓注::w 后可以跟文件名)dd→ 删除当前行,并把删除的行存到剪贴板里p→ 粘贴剪贴板推荐:hjkl(强例推荐使用其移动光标,但不必需) →你也可以使用光标键(←↓↑→). 注:j就像下箭头。
:help <command>→ 显示相关命令的帮助。
你也可以就输入:help而不跟命令。
(陈皓注:退出帮助需要输入:q)你能在vim幸存下来只需要上述的那5个命令,你就可以编辑文本了,你一定要把这些命令练成一种下意识的状态。
于是你就可以开始进阶到第二级了。
当是,在你进入第二级时,需要再说一下Normal模式。
在一般的编辑器下,当你需要copy一段文字的时候,你需要使用Ctrl键,比如:Ctrl-C。
也就是说,Ctrl键就好像功能键一样,当你按下了功能键Ctrl后,C就不在是C了,而且就是一个命令或是一个快键键了,在VIM的Normal模式下,所有的键就是功能键了。
这个你需要知道。
标记:下面的文字中,如果是Ctrl-λ我会写成<C-λ>.以:开始的命令你需要输入<enter> —回车,例如如果我写成:q也就是说你要输入:q<enter>.第二级感觉良好–上面的那些命令只能让你存活下来,现在是时候学习一些更多的命令了,下面是我的建议:(陈皓注:所有的命令都需要在Normal模式下使用,如果你不知道现在在什么样的模式,你就狂按几次ESC键)1.各种插入模式a→ 在光标后插入o→ 在当前行后插入一个新行O→ 在当前行前插入一个新行cw→ 替换从光标所在位置后到一个单词结尾的字符2.简单的移动光标0→ 数字零,到行头^→ 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)$→ 到本行行尾g_→ 到本行最后一个不是blank字符的位置。
07vi文本编辑器的使用-参考答案
计算机学院
实 验 报 告
专业班级成绩评定______
学号姓名教师签名廖建飞
实验题目vi文本编辑器的使用第周星期第节
一、实验目的与要求(此栏实验前由老师填写)
掌握vi的三种工作模式工作方式
二、实验题(答案均以截图方式上交)
1、文本编辑模式的操作:
1)使用vi编写zuoye.c,求1+2+3+……+100的和。
#vi /etc/passwd
:set nu
:set nonu
2)将当前文件/etc/passwd另存到/root/cc.txt
#vi /etc/passwd
:w /root/cc.txt
3)将zuoye.c文件内容插入到cc.txt文档中第8行。
#vi cc.txt
:8 !cat /root/zuoye.c
#vi cc.txt
:%s/teacher/student/g
7)在文档cc.txt中正向查找字符student。
#vi cc.txt
/student
n定位下一个匹配的被查找的字符串
4、综合题:使用vi编辑器编辑/etc/samba/smb.conf
1)在末行模式下,将smb.conf文件另存为/root/smb.conf
4)将文件cc.txt中1~4行的内容,保存到/root/aa.txt中。
#vi cc.txt
:1,4 w /root/aa.txt
5)将文件cc.txt中第1行到第7行中的root换成gen。
#vi cc.txt
:1,7 s/root/gen/g
6)将文件cc.txt中的teacher换成student。
linux练习题
linux练习题一、单项选择题1、/root目录是:A、系统的根目录B、超级用户的主目录C、动态连接库D、系统管理程序2、chmod为了表示“目标文件只有这些权限”,可以用符号_____A、=B、+C、-D、!3、检查文件系统完整性的命令是:A、fsck //检查并修复文件系统B、mvC、mountD、cp4、下面的哪一个shell具有自动补齐功能?A、cshB、tcshC、bashD、sh5、在gzip命令中,-t的作用是:A、解压-dB、显示压缩文件C、检验压缩文件D、删除压缩文件6、管道符是:A、||B、|C、<<D、//7、at命令中需要从标准输入中读入所有的命令,不能指定_______选项。
A、-qB、-bC、-d //删除指定的调度作业D、-f //从指定文件而非标准输入设备获取将要执行的命令8、chmod中通过指定"ugoa"可以控制哪些用户对某文件(目录)的权限可以被改变,其中"a"表示:A、文件的所有者uB、其他组的用户oC、与文件所有者同组的用户gD、所有用户9、Linux系统引导将启动__________进程。
A、initB、gettyC、syslogdD、lpd10、假设执行如下的命令:alias lcd 'ls –l \\!;pwd * 现在输入lcd test1 test2,shell实际上执行的是:A、ls –l test1B、ls –l test1 test2;pwdC、pwdD、ls –l ; pwd11、/sbin目录存放的是:A、使用者经常使用的命令B、动态连接库C、系统管理程序D、设备12、关于at命令下列说法正确的是:A、任何用户都可以使用该命令B、若at.deny不为空,那么除at.deny中指定的用户之外,所有的用户都可以使用该命令C、若at.deny不为空,那么只有at.allow中的用户才能使用该命令D、只有超级用户才能使用该命令(x)13、crontab文件的格式是:A、M D H m d cmdB、M H D d m cmdC、 D M H m d cmdD、M H D m d cmd14、在当前目录下有文件test,文件属主为guest;我们使用admin身份,用命令cp test /tmp,拷贝文件到/tmp(目录属主为root),则/tmp/test的文件属主为:A、guestB、rootC、adminD、其它15、用户user2对下一文件有何权力:-rw-r----- 1 user1 100 1320 Oct 27 08:16 testA、无权B、读C、读写D、执行16、init进程是所有用户进程的父进程。
vi设计习题答案
vi设计习题答案
Vi设计习题答案
在学习计算机编程的过程中,Vi编辑器是一个非常重要的工具。
它可以帮助程
序员快速、高效地编辑文本文件,提高工作效率。
为了帮助大家更好地掌握Vi
编辑器的使用,下面我们来看一些Vi设计习题的答案。
1. 如何在Vi编辑器中进行文本的复制和粘贴?
答:要复制文本,首先按下“ESC”键,然后按下“v”键来选择要复制的文本,接着按下“y”键进行复制。
要粘贴文本,将光标移动到要粘贴的位置,然后按下“p”键即可。
2. 如何在Vi编辑器中进行文本的查找和替换?
答:要查找文本,首先按下“ESC”键,然后按下“/”键,输入要查找的文本,按下“Enter”键即可。
要替换文本,按下“ESC”键,然后输入“:s/要替换的文本/替换后
的文本/g”即可进行替换操作。
3. 如何在Vi编辑器中进行文本的撤销和重做?
答:要撤销操作,按下“ESC”键,然后按下“u”键即可撤销上一步操作。
要重做
操作,按下“ESC”键,然后按下“Ctrl + r”键即可重做上一步操作。
通过这些设计习题的答案,相信大家对Vi编辑器的使用已经有了更深入的了解。
希望大家能够多加练习,熟练掌握Vi编辑器的各种操作,提高自己的编程技能。
Vi编辑器是一个非常强大的工具,掌握它将对你的编程之路大有裨益。
《aix系统应用基础》练习题5-vi编辑器
在可视模式下,可以选择文本后按“y”键复制,然后按 “p”键粘贴。
替换文本
在命令模式下按下“:%s/old/new/g”可以替换文件中所 有出现的“old”为“new”。
退出可视模式
按下“Esc”键可以退出可视模式,回到命令模式。
04
CATALOGUE
VI编辑器实例操作
打开文件并编辑
打开VI编辑器
《AIX系统应用基础 》练习题5-VI编辑 器
contents
目录
• VI编辑器概述 • 如何使用VI编辑器 • VI编辑器常用命令 • VI编辑器实例操作 • 常见问题及解决方案
01
CATALOGUE
VI编辑器概述
什么是VI编辑器
总结词
VI编辑器是UNIX和Linux系统中的文本编辑器,全称为"Vi IMproved",是Vi 编辑器的改进版。
03
CATALOGUE
VI编辑器常用命令
命令模式下的常用命令
移动光标
使用箭头键(↑、↓、→、←)可以移动光标 。
撤销操作
按“u”键可以撤销最后一次操作。
删除字符
按“x”键可以删除光标所在位置的字符。
保存文件
按“ZZ”键可以保存当前文件。
插入模式下的常用命令
插入文本
在命令模式下按下“i”键进入 插入模式,此时可以输入文本
VS
详细描述
与一些图形化的文本编辑器相比,VI编辑 器更加高效,因为它不需要图形界面来操 作。同时,VI编辑器的命令模式使得用户 可以更加灵活地操作文本。此外,VI编辑 器还支持自定义命令和脚本,用户可以根 据自己的需求定制编辑器的功能。虽然VI 编辑器的学习曲线较陡峭,但其强大的功 能和灵活性使得它成为UNIX和Linux系统 中的首选文本编辑器之一。
文本编辑器vi练习题
2、命令练习
• 利用c,C和cc命令修改文件。 • 解释下述vi命令的功能
20G,18|,dM,6H,d4B,x,cw,10cc,3rk,5s,7S,>8M, /this,?abc?-5,mg,g/int/p
• 将编辑文件中所有的字符串s1全所有的字符串s1全部用s2替换应该怎么做
1、建立并修改文本文件
• 建立文件install。 • 重新编辑文件install,添加标题。 • 交换install中第一段和第二段的位置。
Overview of the OpenBSD installation procedure
• OpenBSD has a robust and adaptable text-based installation procedure, and can be installed from a single floppy disk. Most platforms follow a similar installation procedure; however there are some differences in the details. In all cases, you are urged to read the platformspecific INSTALL document in the platform directory on the CD-ROM or FTP sites (for example, i386/INSTALL.i386, mac68k/INSTALL.mac68k or sparc/INSTALL.sparc). • The OpenBSD installation process uses a special kernel with a number of utilities and install scripts embedded in a preloaded RAM disk. After this kernel is booted, the operating system is extracted from a number of compressed tar(1) (.tgz) files from a source other than this preloaded RAM disk. There are several ways to boot this install kernel:
vim 选择题 填空题
vim 选择题填空题
好的,以下是关于 Vim 的选择题和填空题。
选择题
-
1. Vim 是一种什么类型的编辑器?
A. 图形化编辑器
B. 文本编辑器
C. 代码编辑器
D. 富文本编辑器
2. Vim 中使用什么键来进行撤销操作?
A. Ctrl + Z
B. Ctrl + U
C. Ctrl + Y
D. Ctrl + X
3. 在 Vim 中,使用什么命令可以保存并退出当前文档?
A. :w
B. :q
C. :wq
D. :x
4. 在 Vim 中,使用什么命令可以进入插入模式?
A. i
B. a
C. o
D. I
5. 在 Vim 中,使用什么命令可以删除光标所在位置的字符?
A. x
B. d
C. s
D. c
填空题
-
1. Vim 中用于删除光标所在行的命令是 __________。
2. Vim 中用于复制光标所在行的命令是 __________。
3. Vim 中用于粘贴复制内容的命令是 __________。
4. Vim 中用于移动光标到文档开头的命令是 __________。
5. Vim 中用于移动光标到文档结尾的命令是 __________。
vim练习
9、将这个文件另存为man.test.config的文件
:w man.test.config
10、到第27行,并且删除15个字符,结果出现的第一个字符是什么?
27gg 后15x
11、在第一行新增一行,在该行内输入“I am a student ”
gg到第一行 O输入即可 说明:o是在当前行之后插入一行,O是在当前行之前插入一行
1、创建目录/tmp/test,将/etc/man.config复制到该目录下
# mkdir -p /tmp/test
# cp /etc/man.config /tmp/test/
# cd /tmp/test/
2、用vim编辑man.config文件:
# vim man.config
gg 或1G
/bzip 137行 ?bzip2
5、将50行到100行之间的man更改为MAN,并且 逐个挑选 是否需要修改;
若在挑选过程中一直按y,结果会在最后一行出现改变了几个man?
:50,100s/man/MAN/gc 25次替换
6、修改完后,突然反悔了,要全部复原,有哪些方法?
一直按u键
或者
:q!强制不保存退出后,再重新打开该文件
7、复制65到73这9行的内容(含有MANPATH_MAP),并且粘贴到最后一行之后;
65gg或65G到该行后,9yy,G 移动到最后一行,p粘贴
8、21行到42行之间开头为#符号的批注数据不要了,如何删除;
21G到该行 22dd
3、设置显示行号; 移动到第58行,向右移动40个字符,查看双引号内的是什么目录;
:set nu
58G 或58gg
VIM测试题(给用VIM做数据处理的初学者)
VIM测试题(给用VIM做数据处理的初学者)发信人: thinelephant (光吃不长), 信区: VIM标题: VIM 测试题(给用 VIM 做数据处理的初学者)发信站: 水木社区 (Thu Oct 27 20:21:50 2005), 站内以前写的,主要是针对数据处理的,虽然写得不好,不过也发到版上留个备份啦。
:-)VIM 测试题(给用 VIM 做数据处理的初学者)请回答以下操作所需的步骤或命令:01. (4) 光标移到最后一行02. (4) 设置跳格(T ab)宽度为 403. (4) 忽略大小写查找字符串 elephant(本题不得使用 GUI)04. (4) 将所有 elephant 替换为 pig(本题不得使用 GUI)05. (4) 打开 VIM 关于正则表达式的帮助文档06. (4) 在阅读 VIM 帮助时遇到链接如何跳转?如何返回?07. (6) 比较编辑两个内容相近的文件08. (6) 借助外部命令 sort 将文件的行按字母顺序进行排序09. (6) 将每一行的第一个字符与第二个字符交换10. (6) 将当前目录中所有文件的文件名插入到当前文本中假设文件 data.txt 内容如下:ACDSee 000001 499.95 ACD Systems, Ltd.Internet Explorer 000004 1999.50 Microsoft Corp.Vi IMproved 000015 0.00 Bram MoolenaarFlashFXP 000204 199.00 CEDsoft请回答以下操作所需的正则表达式(可查阅帮助,反复尝试):11. (4) 匹配每行的软件名字段12. (4) 匹配每行的编号字段13. (4) 匹配每行的价格字段14. (4) 匹配每行的开发者字段请回答以下操作所需的步骤或命令:15. (6) 交换每行的编号和价格字段16. (8) 借助外部命令 sort 将文件的行按软件价格进行排序17. (8) 将连续两个或以上的空格替换为一个跳格字符18. (6) 删除每行的开发者字段送分题,写得越多越好:19. (8) 请写出任何难以用 notepad 完成的并且你会的 VIM 功能。
(四)、vim的缓冲区、标签、窗口操作
(四)、vim的缓冲区、标签、窗⼝操作1、缓冲区的基本操作a、⽂件与缓冲区的区别vim file1 打开⼀个⽂件时,其实是从磁盘中读取⽂件到内存中,⽂件的内容会被加载到缓冲区中,这个缓冲区在⼀个窗⼝上显⽰,所以他是⼀个已激活的缓冲区,现在可以使⽤ :e file2 命令加载另⼀个⽂件,file将会变成⼀个隐藏的缓冲区,并且 file2 变成已激活缓冲区,vim的⼀些操作是在操作缓冲区,当使⽤vim的保存命令时,vim才将缓冲区写会给⽂件。
命令⽤途:bprev跳转到前⼀个buffer:bnext跳转到后⼀个buffer:bfirst跳转到第⼀个buffer:blast跳转到最后⼀个buffer:buffer num激活加载第num个⽂件:w将当前buffer写⼊⽂件:e重新将⽂件内容加载到缓冲区:qa!关闭所有buffer,且不保存:wa!保存所有buffer:ball为每⼀个buffer打开⼀个窗⼝:bdelete num 或者⽂件名从缓冲区删除第n个⽂件:badd filename新增⼀个缓冲区,指定的⽂件会被加载到缓冲区列表中:buffers, :files :ls列出当前编辑中的缓冲区信息,第⼀个数字是缓冲区的标号,第⼆个是缓冲区当前的状态2、窗⼝窗⼝是缓冲区的显⽰区域,既可以打开多个窗⼝,在这些窗⼝中显⽰同⼀个缓冲区,也可以在每⼀个窗⼝⾥载⼊不同的缓冲区。
命令⽤途s⽔平切分当前窗⼝,新窗⼝仍显⽰当前缓冲区v⽔平切分当前窗⼝,新窗⼝仍显⽰当前缓冲区sp⽔平切分当前窗⼝,新窗⼝仍显⽰当前缓冲区vsp⽔平切分当前窗⼝,新窗⼝仍显⽰当前缓冲区w在窗⼝间循环切换h切换到左边的窗⼝j切换到下边的窗⼝k切换到上边的窗⼝l切换到右边的窗⼝c关闭活动窗⼝o只保留活动窗⼝,关闭其他所有窗⼝3.标签页Vim 的标签页接⼝和其他许多⽂本编辑器不同,在Vim中,可以⽤标签页把窗⼝组织到⼀系列⼯作区中。
典型⽂本编辑器的图形界⾯(GUI)有⼀个⽤于编辑⽂件的主⼯作区,还有⼀个显⽰当前⼯程⽬录树的侧边栏。
第4讲 文本编辑器Vim_练习题
第4讲文本编辑器Vim 练习题1、创建目录/vi.test ,拷贝文件/etc/inittab到/vi.test目录下,使用vi编辑/vi.test/inittab文件,把其中的第23行到29行注释(使用连续行注释命令)2、编辑/vi.test/inittab文件,把第10行到20行之间的字符串init都替换为boot ;并且在文件末尾导入当前编辑文件的时间3、定义快捷键Ctrl+e可以输入兄弟连网址并自动返回命令行模式4、设置vim配置文件,使每次使用vi编辑任何文件都自动显示行号;并定义在vi中只要输入mymail就自动转换为admin@5、编辑/vi.test/inittab文件,定位到第35行,光标跳到行尾添加“”,然后复制此行到第40行后6、删除/vi.test/inittab文件的第1行到第20行7、编辑/vi.test/inittab定位到屏幕下端,把光标所在处字符替换为“x”,查找字符串“NOT”,找到后替换为“YES”,保存退出第4讲文本编辑器Vim 练习题答案1、创建目录/vi.test ,拷贝文件/etc/inittab到/vi.test目录下,使用vi编辑/vi.test/inittab文件,把其中的第23行到29行注释(使用连续行注释命令)mkdir /vi.testcp /etc/inittab /vi.testvi /vi.test/inittab:23,29s/^/#/g2、编辑/vi.test/inittab文件,把第10行到20行之间的字符串init都替换为boot ;并且在文件末尾导入当前编辑文件的时间:10,20s/init/boot/g:r !date3、定义快捷键Ctrl+e可以输入兄弟连网址并自动返回命令行模式:map ^E <ESC>4、设置vim配置文件,使每次使用vi编辑任何文件都自动显示行号;并定义在vi中只要输入mymail就自动转换为admin@vi ~/.vimrcset nuab mymail admin@5、编辑/vi.test/inittab文件,定位到第35行,光标跳到行尾添加“”,然后复制此行到第40行后:35 or G35按A ,输入 ,按ESC ,yy复制,G40 ,p粘贴6、删除/vi.test/inittab文件的第1行到第20行:1,20d7、编辑/vi.test/inittab定位到屏幕下端,把光标所在处字符替换为“x”,查找字符串“NOT”,找到后替换为“YES”,保存退出Lr 输入“x”/NOTR 输入“YES”:wq or ZZ。
vim的使用答案
一、实验目的和要求1.通过指定指令的vim操作练习,使读者能够熟练使用vim中的常见操作,并且熟悉vim的几种模式,如果读者能够熟练掌握实验内容中所要求的内容,则表明对vim的操作已经很熟练了。
二、实验步骤和原理1.vim使用练习(1)在“/root”目录下建一个名为“vim”的目录。
(2)进入“vim”目录。
(3)将文件“/etc/inittab”复制到“vim”目录下。
(4)使用vim打开“vim”目录下的inittab。
(5)设定行号,指出设定initdefault(类似于“id:5:initdef ault”)的所在行号。
(6)将光标移到该行。
(7)复制该行内容。
(8)将光标移到最后一行行首。
(9)粘贴复制行的内容。
(10)撤销第9步的动作。
(11)将光标移动到最后一行的行尾。
(12)粘贴复制行的内容。
(13)光标移到“si::sysinit:/etc/rc.d/rc.sysinit”。
(14)删除该行。
(15)存盘但不退出。
(16)将光标移到首行。
(17)插入模式下输入“Hello,this is vi world!”。
(18)返回命令行模式。
(19)向下查找字符串“0:wait”。
(20)再向上查找字符串“halt”。
(21)强制退出vim,不存盘。
分别指出每个命令处于何种模式下?三、调试过程调试成功:四、实验结果五、总结通过指定指令的vim操作练习,我可以熟练使用vim中的常见操作,并且熟悉vim的几种模式。
接着调试一个有问题的程序,我进一步熟练使用vi操作,而且熟练掌握gcc编译命令及gdb的调试命令,通过对有问题程序的跟踪调试,进一步提高发现问题和解决问题的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第4讲文本编辑器Vim 练习题
1、创建目录/vi.test ,拷贝文件/etc/inittab到/vi.test目录下,使用vi编辑/vi.test/inittab文件,把其中
的第23行到29行注释(使用连续行注释命令)
2、编辑/vi.test/inittab文件,把第10行到20行之间的字符串init都替换为boot ;并且在文件末尾
导入当前编辑文件的时间
3、定义快捷键Ctrl+e可以输入兄弟连网址并自动返回命令行模式
4、设置vim配置文件,使每次使用vi编辑任何文件都自动显示行号;并定义在vi中只要输入mymail
就自动转换为admin@
5、编辑/vi.test/inittab文件,定位到第35行,光标跳到行尾添加“”,然后复
制此行到第40行后
6、删除/vi.test/inittab文件的第1行到第20行
7、编辑/vi.test/inittab定位到屏幕下端,把光标所在处字符替换为“x”,查找字符串“NOT”,找
到后替换为“YES”,保存退出
第4讲文本编辑器Vim 练习题答案
1、创建目录/vi.test ,拷贝文件/etc/inittab到/vi.test目录下,使用vi编辑/vi.test/inittab文件,把其中
的第23行到29行注释(使用连续行注释命令)
mkdir /vi.test
cp /etc/inittab /vi.test
vi /vi.test/inittab
:23,29s/^/#/g
2、编辑/vi.test/inittab文件,把第10行到20行之间的字符串init都替换为boot ;并且在文件末尾
导入当前编辑文件的时间
:10,20s/init/boot/g
:r !date
3、定义快捷键Ctrl+e可以输入兄弟连网址并自动返回命令行模式
:map ^E <ESC>
4、设置vim配置文件,使每次使用vi编辑任何文件都自动显示行号;并定义在vi中只要输入mymail
就自动转换为admin@
vi ~/.vimrc
set nu
ab mymail admin@
5、编辑/vi.test/inittab文件,定位到第35行,光标跳到行尾添加“”,然后复
制此行到第40行后
:35 or G35
按A ,输入 ,按ESC ,yy复制,G40 ,p粘贴
6、删除/vi.test/inittab文件的第1行到第20行
:1,20d
7、编辑/vi.test/inittab定位到屏幕下端,把光标所在处字符替换为“x”,查找字符串“NOT”,找
到后替换为“YES”,保存退出
L
r 输入“x”
/NOT
R 输入“YES”
:wq or ZZ。