vim 的基础操作
一、编辑操作
1、输入编辑内容
如果在其它模式下,需要先按 ESC 键,到一般模式,然后点击 i 按键,即可进入到 INSERT 插入模式
2、复制粘贴
1)、从其它地方复制的文本内容,粘贴到文件中(插入模式)
直接 vim file
,进入 INSERT 模式后,快捷键进行 ctrl + v
即可进行将文本内容进行粘贴。
2)、从当前文本中复制粘贴选中的部分内容(可视模式)
- 按
ESC
回到普通模式 - 将光标移动到需要进行复制的文本字符前面,按
v
键(小写为选中对应字符,大写为选中整行) 进入到VISUAL
模式。 - 移动左右键来选中对应的文本,被选中的内容背景显示为白色。
- 按下
y
键复制选中的内容,按下d
剪切选中的内容 - 将光标移动到需要粘贴的位置,按下
p
(小写)将复制的内容粘贴到此处。
3)、从当前文本中复制整行内容并进行粘贴(一般模式)
- 首先按
ESC
回到 一般模式 - 将光标移动到需要进行复制的行,按下
yy
将复制光标所在的一整行内容。 - 移动光标到合适的位置,按
p(小写)
将内容粘贴到光标的下一行,按P(大写)
将内容粘贴到光标的上一行 - 【一般模式下选中复制内容操作】:
nyy
:n 为数字,表示复制光标所在行到向下的 n 行,如 输入6yy
表示复制从光标所在行往下,一共6行的内容。y1G
:复制光标所在的行到第一行的所有内容yG
:复制光标所在行到最后一行的所有内容y0
:复制光标所在的字符到该行首的所有内容。y$
:复制光标所在的字符到改行尾的所有内容。
4)、剪切/删除 当前文本中的内容(一般模式)
如果要删除或剪切一些内容,一般是按 d
,主要用法如下:
dd
:默认删除光标所在行的整行内容,此时该内容在粘贴版上,按p
可以在需要的地方进行粘贴,否则相当于删除该行 。ndd
:n 为数字表示要删除从光标所在行开始往下的 n 行内容。如6dd
表示删除从光标所在行开始往下的6行内容。d1G
:删除光标所在行,到第一行的所有内容。dG
:删除光标所在行到最后一行的所有内容。d0
:删除光标所在位置的字符到该行首的所有内容。d$
:删除光标所在位置的字符到该行尾的所有内容。nx
:连续向后删除 n 个字符,如6x
表示连续向后删除 6 个字符。
3、撤销与重做(一般模式)
u
:撤销当前的操作,相当于恢复之前的内容ctrl + r
:重做上一步。
二、常用的相关操作
1、光标移动操作 (一般模式)
gg
:移动到文件的第一行行首位置G
:移动到文件的最后一行nG
:n表示数字,如6G
表示移动到第6行0
:移动到当前行的行首$
:移动到当前行的行尾
2、搜索字符内容(一般模式)
/string
:搜索光标以后的所有string
?string
:搜索光标之前的所有string
- 匹配之后点击
enter
进行搜索,按n
跳转到下一个,按N
跳转到上一个。 - 【命令行模式 下设置搜索结果】:
:set hlsearch
:高亮显示匹配的结果:set nohlsearch
:取消高亮显示:set ignorecase
:搜索前,输入该指令,搜索时将忽略大小写:set noignorecase
:搜索前,输入该指令,搜索时区分大小写,默认情况下区分大小写
3、替换字符(命令行模式)
进入到命令行模式 :
,输入如下命令
1,$s/word1/word2/g
:从第一行到最后一行搜索word1
字串,并用word2
来进行全部替换,g
表示全局替换。m,ns/word1/word2/g
:m,n
表示行数,从m
到n
行之间搜索word1
字串,并用word2
来进行全部替换。
4、命令行模式下的常用命令:
w
:将当前文件保存w!
:强制保存e!
:丢弃当前做的所有更改,恢复到上一次保存的结果。q
:离开vim,如果有编辑且未保存会警告提示。q!
:强制离开,且不保存数据。wq
:保存数据并离开vimw <fileName>
:将当前文件另存为fileName
的文件。m,n w <fileName>
:将m,n
行之间的内容保存成新的文件fileName
,包含m
,n
行。!<command>
:暂时离开vim,执行临时的命令command
,并查看结果。如 vim 正在编辑文件,此时需要临时执行df -h
命令并查看结果,且不想退出vim时,可以在命令行模式下输入指令:!df -h
set nu
:显示行号set nonu
:不显示行号
5、多文档编辑
vim <file1> <file2>
将同时开启编辑多个文件,输入:
进入到命令行模式
n
:跳到下一个文件进行编辑N
:跳到上一个文件进行编辑files
:列举 vim 开启的所有文档: