vim编辑器是linux环境下修改文件必备神器,你真的会用吗,进入输入i
命令,进入编辑模式,然后上下移动光标,鼠标选中复制粘贴。这样操作稍微有点慢,而且有点低(low)。如果现在让你定位到文档的某一行,你是否还要去挨行去数,如果让你把文档中所有a修改为b,估计你会当场吐血身亡,所以下面的命令也许就是你想要的。
1. vim编辑器的几种模式
模式分类:
- 命令模式:用vim 打开一个文件刚开始进入的就是命令模式,在这个模式下我们可以控制光标的移动,字符,字或者行的删除,移动复制某段区域,在该模式下可以进入插入模式也可以进入底行模式。
- 编辑模式:在编辑模式下才可以插入文字,按Esc进入末行模式。
- 末行模式:在末行模式下保存文件或者退出vim,也可以在末行模式下使用man查找函数等……
模式转换:1.1 编辑模式
i
:当前光标的前面输入I
:当前行的开头输入
a
:当前光标的后面输入A
:当前行的末尾输入
o
:光标所在行的下一行输入O
:光标所在行的上一行输入
1.2 命令模式
yy
:复制光标所在的一行2yy
:复制2行,复制多行,根据前面的数值控制
p
:粘贴到光标所在行的下方
dd
:剪切光标所在的整行3dd
:剪切3行,剪切多行,根据前面的数值控制D
:从当前光标位置剪切到行末尾d0
:从当前光标开始剪切到行首
x
:删除光标后面的内容,一次删除一个字符X
:删除光标前面的内容,一次删除一个字符
H
:当前屏幕的顶部M
:当前屏幕的中央L
:当前屏幕的末尾
ctrl+f
:向下翻一页ctrl+b
:向上翻一页
20G
:快速的定位到第20行G
:快速的回到整个文件最后一行gg
:快速的回到整个文件的第一行
w
:跳到下一个单词开头位置b
:跳到上一个单词开头位置
u
:撤销上一步操作ctrl+r
:反撤销
v
:从当前行的开头选中到光标所在位置为止V
:选中光标所在的整行
>>
:向右移动代码<<
:向左移动代码.
:重复执行上一步操作
{
:上一片代码}
:下一片代码
r
:替换当前光标所在的单个字符R
:替换光标以及后面的字符
/
:从上向下搜索?
:从下向上搜索n
:下一个符合条件的内容N
:上一个符合条件的内容
shift+zz
:保存并退出
1.3 末行模式
:%s/abc/123/g
替换当前文件中的所有abc为123:1,20/abc/123/g
替换当前文件的1-20行中的abc为123:q
退出:q!
不保存退出:wq!
保存退出
2. vim默认显示行数编号
- 手动显示:在vim命令行模式下输入:
set nu
- 取消显示:在vim命令行模式下输入:
set nonu
- 永久自动显示:修改一个配置文件,输入命令:
vim ~/.vimrc
,打开后是一个空文件,添加set nu
,保存退出,再次进入vim
编辑器,就能自动显示出行号。取消就是删除这个文件即可。