打开Linux终端,开始创建第一个文件,回车进入vim编辑器(命令模式)
[user@master ~]$ vim text
vim编辑器的三种模式转换
插入模式<=>命令模式<=>末行模式
- 命令模式 => 插入模式 按insert键或i键、a键、o键、s键等
- 插入模式 => 命令模式 按Esc键
- 命令模式 => 末行模式 按冒号键
- 末行模式 => 命令模式 输入末行命令之后回车键
在命令模式下高效按键
各种插入模式
- a 在光标后插入
- A 在当前行末尾插入
- o 在当前行的下一行插入
- O 在当前行的上一行插入
简单移动光标
- 0 数字零,到行首
- ^ 到本行第一个不是blank的字符(blank字符有空格、tab、换行、回车)
- $ 到本行行尾
- g_ 到本行最后一个不是blank的字符
- /pattern 搜索 pattern 字符串,如果多个匹配,按n切换到下一个
复制、粘贴
- p 当前位置后粘贴
- P 当前位置前粘贴
- yy 复制当前行
- nyy n不是字母,而是数字,相当于要复制多少行,相样也有ndd,删除多少行
- yw 将光标处开始到字结尾处的所有字符复制
- nyw n不是字母,而是数字,将光标处开始的n个字复制
删除
- h,j,k,l 对应光标左、下、上、右移动
- x 一次删除当前光标处的一个字符
- n x 一次删除当前光标处开始的n个字符
- X 一次删除当前光标前面的一个字符
- n X 一次删除当前光标前面的n个字符
- dd 一次删除一行字符
- n dd 一次删除n行字符
撤销和恢复
- u 撤销最近一次的操作
- ctrl+r 恢复最近一次的撤销操作
页数操作
- ctrl+b 往回移动一页
- ctrl+f 向前移动一页
- ctrl+u 往回移动半页
- ctrl+d 向前移动半页
- 光标快速移动
- nG 到第n行,注意G是大写,也可以在 command 模式输入 :n ,到第n行
- gg 到第一行,相当于1G
- G 到最后一行
- w/W 到下一单词的开头,大小写均可,但w认为是单词是字母数字下划线组成,其它字符均为分隔符;W只认为blank字符(空格,tab)为分隔符
- e/E 到下一单词的结尾,说明同上
- % 匹配括号移动,包话 (,{,[
- 和 # 匹配光标当前所在的单词,移动光标到下一个匹配单词是 * , 上一个是 #
- r/R 替换一个字符/全局替换模式
在末行模式下的高效按键
:wq 保存退出
:q! 放弃最后一次保存之后做的修改并退出
:q (最后一次保存之后,没有对文档进行任何修改)退出
:z 将缓冲区内容写入文件,不退出
:x 保存退出
:set number 或者 :set nu 显示行号
:set nonumber 或者 :set nonu 不显示行号
:n 表示将光标移动到第n行的行首
:! 不退出vi,执行shell命令
替换命令 【这里详细讲解一下】
**格式** : : [范围] s /string1/string2 /[c e g i] 【注】如果省略范围,默认从当前光标处开始 **选项**: c 每次替换之前,询问师范替换? y确认 n拒绝 a确认全部 q返回 默认全部替换 g 所有符合的部分,都做替换 没有g,只对每行第一次出现的符合的部分进行替换 e:不显示errors i:不区分大小写 **示例**: :1,7 s /deep/abcd/g 【注】表示从1行到7行中所有deep替换成abcd
插入模式
- 插入模式下直接输入即可
版权归原作者 原味奶茶001 所有, 如有侵权,请联系我们删除。