设为首页 收藏本站
查看: 3071|回复: 6

[经验分享] RHEL6入门系列之十二,vi编辑器

[复制链接]

尚未签到

发表于 2013-3-12 09:05:07 | 显示全部楼层 |阅读模式
Linux系统中的很多功能都需要通过修改相应的配置文件来实现,在字符界面下要修改文件的内容大都要用到一个名叫vi编辑器的工具。这么说吧,vi编辑器就相当于Windows系统中的WORD+记事本,它在Linux系统中的地位是非常重要的。
vim是vi编辑器的增强版本,在vi编辑器的基础上扩展了很多实用的功能,但是习惯上也将vim称作vi。实际上我们平常使用的大都是这个vim。
vi编辑器本身的命令很简单,命令的基本格式:
vim [文件名]
如果指定的文件不存在,那么vim命令会创建文件并进入编辑状态,如果文件存在,则进入编辑状态对其进行编辑。
千万不要以为vi编辑器就这么简单,就像在Windows中使用WORD一样,利用WORD打开一个文档很容易,但难的是怎么去编辑这个文档。所以,vi编辑器的关键内容是接下来的部分。

一、 vi编辑器的工作模式

由于vi是一个工作在字符界面下的编辑器,因此它的大部分功能都是通过命令或快捷键来实现的,操作相对那些图形界面下的编辑工具要复杂一些。
在vi编辑界面中有三种不同的工作模式:命令模式、插入模式、末行模式,不同的工作模式所起到的功能是不同的。
命令模式。启动vi编辑器后默认进入命令模式,该模式下主要完成如光标移动、字符串查找、删除、复制、粘贴等操作。不论用户处于何种模式,只要按下Esc键,即可进入命令模式。
插入模式。在命令模式下,按“i”、“o”、“a”键或“Insert”键就可以切换到插入模式,该模式中的主要操作就是录入文件内容,可以对文件正文进行修改、或者添加新的内容。处于插入模式时,vi编辑器的最后一行会出现“—INSERT—”的状态提示信息。
末行模式。在命令模式下,按“:”键即可进入末行模式,该模式中可以保存文件、退出编辑器,以及对文件内容进行查找、替换等操作。处于末行模式时,vi编辑器的最后一行会出现“:”提示符。
182133788.jpg
vi编辑器中涉及到的命令和快捷键非常多,一项项的列举这些功能也没有多大意义,下面还是以一个具体的实例来介绍一些常用的操作。
将系统中的/etc/inittab文件复制到/root目录中,以它为对象用vi编辑器进行编辑。
[iyunv@localhost ~]# cp /etc/inittab /root
[iyunv@localhost ~]# vim inittab

二、 命令模式下的基本操作

1、光标移动
在命令模式下,可以直接使用键盘方向键完成光标移动,也可以使用Page Up或Page Down向上或向下翻页。
另外有些常用的快捷键也要掌握:
182421113.jpg

为了便于查看行间跳转效果,可以先进入末行模式执行“:set nu”命令显示行号,然后使用“1G”或“gg”可以跳转到第1行,使用“G”可以跳转到最后一行,使用“3G”可以跳转到第3行,“5G”跳转到第5行等。
按下“^”或数字“0”,可以将光标移动到所在行的行首。按下“$”或“End”键,可以将光标移动到所在行的行尾。按下“10→”,可以将光标向右移动10个字符;按下“10←”,可以将光标向左移动10个字符。
2、 复制粘贴删除
182537798.jpg
使用x或Del键可以删除光标处的单个字符,#x可以删除#个字符。
使用dd命令可以删除当前光标所在行,使用d^可以删除当前光标之前到行首的所有字符,使用d$删除当前光标处到行尾的所有字符。
#dd删除#行,如4dd表示删除光标所在行,以及光标下面的3行。
使用yy可以复制当前行整行的内容到剪贴板,使用#yy可以复制从光标处开始的#行内容(其中#号用具体数字替换),按p键可将剪贴板中的内容粘贴到光标位置处之后。
3、文件内容查找
182801906.jpg
在命令模式下,按“/”键后输入指定的字符串,将从当前光标处开始向后进行查找。例如输入“/runlevel”,回车后将查找文件中的“runlevel”字符串并高亮显示结果,光标自动移动到第一个查找结果处,按“n”键移动到下一个查找结果,按“N”键移动到上一个查找结果。“?”可以自当前光标处开始向上查找,用法与“/”类似。
4、撤销编辑
182929802.jpg
按u键可以撤销最近一次的操作,并恢复操作结果,按U键可以撤销对当前行所做的所有编辑。
三、末行模式下的基本操作

在命令模式下按“:”可以切换到末行模式,vi编辑器的最后一行将显示“:”提示符,用户可以在该提示符后输入特定的末行命令。

1、 保存退出vi编辑器
183150750.jpg
“:w”可以保存文件内容,如需要另存为其它文件,则需要指定新的文件名,“:w /root/newfile”。
“:q”可以退出vi编辑器,“:q!”可以不保存强制退出。
“:wq”保存退出。
2、文件内容替换

在末行模式下,使用s命令能够将文件中特定的字符串替换成新的内容。使用替换功能时的末行命令格式如下:
:[替换范围] s/旧的内容/新的内容[/g][/c]
183257588.jpg
替换范围如果用“%”,表示在整个文件内容中进行查找并替换。也可以使用“12,23”的形式,表示将从12行到23行中的特定字符串进行替换。如果不指定范围则只对当前所在行进行操作。
最末尾的“/g”部分是可选内容,表示对替换范围内每一行所有的匹配结果都进行替换,省略“/g”时将只替换每行中的第一个匹配结果。
“/c”,每次替换前都要进行询问,要求用户确认。
例如,将整个文档中所有的runlevel都替换成level:
:% s/runlevel/level/g

vi编辑器看似很复杂,其实常用的操作也就那么几个,而且同样的一个操作往往有好几种不同的实现方法,至于到底用哪种方法,则完全可以凭个人的喜欢。下面是一个vi编辑器的任务训练,大家可以自行练习一下,如果能熟练完成这个任务,那么vi编辑器也就掌握的差不多了。

四、vi编辑器案例练习

1. 在/root目录下建立一个名为vitest 的目录;
2. 将文件/etc/man.config复制到/root/vitest目录中;
3. 使用vi编辑器打开文件/root/vitest/man.config,对其进行编辑;
4. 在vi编辑器中设定行号;
5. 移动光标到第58行,再向右移动40个字符,说出你看到的双引号内是什么目录?
6. 移动光标到第一行,并且向下搜寻一下“X11R6”这个字符串,请问它在第几行?
7. 将50到100行之间的man改为MAN,并且一个一个确认是否需要修改。
8. 修改完之后,突然反悔了,要全部复原,有哪些方法?
9. 复制51到60行这十行的内容,并且贴到最后一行之后;
10.删除11到30行之间的20行;
11.将这个文件在当前目录下另存成一个名为man.test.config的文件
12.去到第29行,并且删除15个字符;
13.保存退出。







参考答案

1. mkdir /root/vitest
2. cp /etc/man.config /root/vitest
3. vim /root/vitest/man.config
4. :set nu
5. 先按下58G,再按下40→,会看到“/dir/bin/foo”。
6. 先按下gg,然后按下/X11R6搜寻,会看到它在第47行。
7. :50,100 s/man/MAN/gc
8. (1)简单的方法可以一直按u回复到原始状态,(2)使用不储存离开:q!
9. 先51G 然后再10yy,之后按下G 到最后一行,再按p粘贴上十行。
10. 11G 之后,再20dd即可删除20 行了。
11. :w man.test.config
12. 29G之后,再15x即可删除15个字符;
13. :wq!


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-3782-1-1.html 上篇帖子: RHEL6入门系列之十一,内/外部命令、重定向、管道 下篇帖子: RHEL6入门系列之十三,阶段练习1 编辑器

尚未签到

发表于 2013-3-14 00:40:44 | 显示全部楼层
没看完~~~~~~ 先顶,好同志

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

发表于 2013-5-15 23:15:51 | 显示全部楼层
帮你顶下哈!!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-16 13:04:02 | 显示全部楼层
相当不错,感谢无私分享精神!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-17 09:33:55 | 显示全部楼层
找到好贴不容易,我顶你了,谢了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-17 23:06:42 | 显示全部楼层
只要不下流,我们就是主流!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-5-18 11:25:40 | 显示全部楼层
人生自古谁无死,啊个拉屎不用纸!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表