总第85篇
本篇主要梳理一下如何使用Vim编辑器来编写、修改文档,以及对这个工具的使用,从而能更深入地理解此编辑器的命令和模式切换。
Vim编辑器的使用
Vim编辑器有三种模式:命令模式、输入模式、末行模式。每种模式都分别支持多种不同的命令快捷键, 这三种模式间的区别如下:
命令模式用户启动后默认进入命令模式。此状态下,输入会被当作是命令而非输入字符,有些命令会直接执行,有些命令会切换编辑器的模式。比如,在输入i会切换到输入模式,输入:会切换到末行模式,输入x会删除当前光标所在处的字符。命令模式中,最常用的一些命令列表如下:
命令模式下的命令说明dd删除(剪切)光标所在的整行5dd删除(剪切)光标处开始的5行yy复制光标所在的整行5yy复制从光标处开始的5行n显示搜索命令定位到的下一个字符串N显示搜索命令定位到的上一个字符串u撤销上一步操作p将之前删除(dd)或复制(yy)过的数据粘贴到光标后面命令模式只有一些最基本的命令,仍要依赖末行模式输入更多的命令。
输入模式在命令模式下,按i就进入了输入模式。此模式下可以正常的文本输入,和我们在其它文本中输入完全一样。按Insert键,可以切换光标为输入/替换模式,按ESC键,则退出输入模式,切换到命令模式。
末行模式末行模式主要用于保存或退出文件,以及设置Vim编辑器的工作环境,还可以让用户执行外部的Linux命令或跳转到所编写文档的特定行数。在命令模式下,按下:即可以进入末行模式,按ESC键,可退出末行模式,切换到命令模式。末行模式的常用命令列表如下:
末行模式下的命令说明:w保存:q退出:q!强制退出(放弃对文档的修改内容):wq!强制保存退出:set nu显示行号:set nonu不显示行号:命令执行此命令:整数跳转至此行:s /one/two将当前光标所在的第一个one替换成two:s /one/two/g将当前光标所在行的所有one替换成two:%s/one/two/g将全文中的所有one替换成two?字符串在文本中从下至上搜索此字符串/字符串在文本中从上至下搜索此字符串Vim编辑器是在三种模式间切换的,每次启动时默认是在命令模式,此时要切换到输入模式后再进行文档的编写工作,而每次在编写完文档后要回到命令模式,再进入末行模式执行文档的保存或退出工作。在Vim中,是无法直接从输入模式切换到末行模式的。其工作模式的流程图可表示成如下形式:

下面以一个实例来说明如何使用Vim编辑器。输入vi linux.txt,将进入命令模式,若linux.txt文件存在,则打开这个文件,若不存在则创建一个临时的输入文件。此时,可以切换到编辑模式,可以用a、i、o三个键切换到输入模式,这三种方式表示的意义如下:
a:切换到输入模式后,在光标后面一位开始输入;i:切换到输入模式后,在光标当前位置开始输入;o:切换到输入模式后,在光标下面创建一个空行开始输入;编辑完成后,可以按ESC键,返回命令模式,再输入:wq保存并退出文档,非常简单。
Vim的键盘如下图所示,可以根据这个键盘图快速熟悉相关的操作。

本文到此结束!下篇继续!
如果对你有帮助,请随手 点赞 或 赞赏!关注本专栏,更多干货与你分享。
=======================================================
欢迎【关注、私信 @武三郎】。我们一起交流一起进步。
免责声明:文章内容来自互联网,本站仅提供信息存储空间服务,真实性请自行鉴别,本站不承担任何责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:【008】Vim编辑的使用及详细键盘图(超实用)-vi命令 https://www.bxbdf.com/a/137841.shtml