模式
- 命令模式:控制光标移动,可对文本进行删除、复制、粘贴和查找。
- 末行模式:保存、退出与设置编辑环境。
- 输入模式:正常的文本录入。
每次运行vim编辑器后都默认会是“命令模式”
,需要先进入到“输入模式”后再进行编写文档的工作,而每次编辑完成需先返回到“命令模式”后再进入“
末行模式”中执行对文本的保存或退出操作,并不能直接从“输入模式”
切换到“末行模式”
。
vim编辑器内设支持的命令有成百上千种用法,下面只介绍常用的。
命令模式和末行模式中常用的快捷命令
命令 | 作用 |
---|---|
dd | 删除(剪切)光标所在整行 |
5dd | 删除(剪切)从光标处开始的5行 |
yy | 复制光标所在的整行 |
5yy | 复制从光标开始的5行 |
n | 显示搜索命令定位到的下一个字符串 |
N | 显示搜索命令定位到的上一个字符串 |
u | 撤销上一步的操作(类似一般win下的Ctrl + z) |
p | 将之前删除(dd)或复制(yy)过的数据粘贴到光标后面 |
?字符串 | 在文本中从下至上搜索该字符串 |
/字符串 | 在文本中从上至下搜索该字符串 |
模行模式
命令 | 作用 |
---|---|
:w | 保存 |
:q | 退出 |
:q! | 强制退出(放弃对文本的修改内容保存) |
:wq! | 强制保存退出 |
:set nu | 显示行号 |
:set nonu | 不显示行号 |
:命令 | 执行该命令 |
:整数 | 跳转到该行 |
:s/one/two | 将当前光标所在行的第一个替换成two |
:s/one/two/g | 将当前光标所在行所有的one替换成two |
:%s/one/two/g | 将全文的所有one替换成two |
末行模式主要用于保存或退出文件,能够设置vim编辑器的整体使用环境,还可以让用户执行外部Linux命令或跳转到特定的行数,切换到末行模式的方式就是在命令模式中输入一个冒号就可以的,末行模式中可用的命令如下表:
命令 | 作用 |
---|---|
:w | 保存 |
:q | 退出 |
:q! | 强制退出(放弃对文本的修改内容保存) |
:wq! | 强制保存退出 |
:set nu | 显示行号 |
:set nonu | 不显示行号 |
:命令 | 执行该命令 |
:整数 | 跳转到该行 |
:s/one/two | 将当前光标所在行的第一个替换成two |
:s/one/two/g | 将当前光标所在行所有的one替换成two |
:%s/one/two/g | 将全文的所有one替换成two |
编写简单文档
一、编写的第一步就是给文件取个名字
vim test.txt
这段代码执行结果,如果文档的名称存在则打开它,如果不存在则是创建一个临时的输入文件,进入操作文件的状态。
结果:
二、进入文件后默认看到的是vim编辑器的命令模式,这时只能够执行命令快捷键而不能随意输入文本内容,必须切换到输入模式才可以开始编写工作。有些读者应该能够猜出a、i、o三键的区别了吧,对,就是光标的位置不同!a键与i键分别是在光标右一位和光标当前位置切换到输入模式,而o键则是在光标的下面再创建一个空行,此时可敲击a键进入到编辑器的输入模式:
三、输入模式是可以随意输入文本内容
四、保存、退出文档编辑
如果想要保存并退出这个文本文件,必须先从输入模式返回到命令模式,然后切换至末行模式中才能完成保存退出操作。
然后便可以用cat命令查看到保存文件后的信息了。
cat test.txt