关于vim的三种模式
本文中所说的所有命令都是在使用 vim file 命令后进入文本界面使用的命令
1、vim命令模式
(1)、调整vim的工作方式
:set nu 显示文件行号
:set nonu 取消行号
:set mouse=a 显示鼠标
:set cursorline 显示行线
永久设定-编辑配置文件 vim/etc/vimrc 在这个模式里书写时,不需要写冒号(冒号是vim程序的开始符)
注意在永久设定配置文件时,防止因操作不当导致出现问题,先备份要操作的文件
(2)字符搜索
/关键字 会高亮显示关键字
noh 取消高亮显示
n ##向上匹配##
N ##向下匹配##
(3)字符管理
删除:
命令 | 功能 |
---|---|
dl | 删除单个字母 |
dnl | 删除n个字母 |
dw | 删除1个单词 |
dnw | 删除n个单词 |
dd | 删除1行 |
dnd | 删除n行 |
复制:
命令 | 功能 |
---|---|
yl | 复制1个字母 |
ynl | 复制n个字母 |
yw | 复制1个单词 |
ynw | 复制n个单词 |
yy | 复制1行 |
yny | 复制n行 |
剪切:
命令 | 功能 |
---|---|
cl | 剪切1个字母 |
cnl | 剪切n个字母 |
cw | 剪切1个单词 |
cnw | 剪切n个单词 |
cc | 剪切1行 |
cnc | 剪切n行 |
注意:在剪切之后vim会进入【insert】模式,若要进行粘贴需要先退出【insert】模式,然后进行粘贴操作
粘贴:
命令 | 功能 |
---|---|
p | 粘贴 |
撤销:
命令 | 功能 |
---|---|
u | 撤销 |
Ctrl+r | 恢复撤销 |
(4)、可视化模式
ctrl+v 进入【VISUAL BLOCK】模式 ,在这个模式下可以选择区域来进行操作
在可视化模式下:批量添加字符
ctrl+v 然后按上下左右四个健来选定要操作的范围,在这之后可以进行粘贴、删除等操作
我们选中了这一块的内容,接下来就可以做一些操作,例如我们进行了删除操作
我们将选中的部分进行了删除操作,如上图可看到选中部分已经被删除
ctrl+v 按大写的【I】,然后进入【insert】模式,便可进行字符添加,若要退出可视化模式,按【esc】即可退出
(5)、字符的替换
:%s/要替换的字符/替换后的字符/g
命令 | 功能 |
---|---|
:%s/:/@@@@@/g | 替换全文文本中的:为@@@@@ |
:1,8s/:/%%%%%/g | 将文本中1至3行的:全部替换为@ |
:/adm/,lp/s/:/@/g | 将文本中adm至lp之间的:全部替换为@ |
注意:
(1)%s表示所有的行,g表示所有的列,若不加g则默认为每一行的第一列
(2)在将具体单词之间的相关文本进行替换时需注意,若所指定限制范围的单词出现了多次,这是可能会出现问题(计算机不能判断从那个单词开始限定),若遇到这种情况可改用其他替换方法来处理,避免出现错误。
(6)、分屏功能
ctrl+w s 上下分屏
ctrl+w v 左右分屏
ctrl+w c ##关闭光标所在屏幕##
ctrl+w 再按上下左右 ##光标移动到指定位置##
: sp file ##同时编辑当前文件和file##
(7)、在命令模式下的光标的移动
命令 | 功能 |
---|---|
gg | 将光标移动到文件的第一行 |
G | 将光标移动到文件的最后 |
: 数字 | 将光标移动到指定行 |
2、插入模式
插入模式下光标移动的命令
命令 | 功能 |
---|---|
i | 光标所在位置插入 |
I | 光标所在行的行首插入 |
o | 光标所在行的下一行插入 |
O | 光标所在行的上一行插入 |
a | 光标所在字符的下一个字符 |
A | 光标所在行的行尾插入 |
s | 光标所在字符删除并且插入 |
S | 光标所在行删除并插入 |
注意:每次按完这些键后会自动进入插入模式,既可以书写内容,故想进行其他插入命令时需要先按【Esc】退出插入模式,再执行其他命令
3、退出模式
命令 | 功能 |
---|---|
:q | 退出,当对所打开的文件内容没有做修改操作时使用 |
:wq | 保存且退出,当对修改后的文件希望保存时使用 |
:q! | 强行退出不保存,当对文件内容做了修改但不希望保存时使用 |
:wq! | 强制保存退出,在对文件类型为只读文件做了修改后,希望保存时使用 |
注意:在使用:wq!命令时,这里所说的只读文件指当前用户所有的文件,或者当前操作用户为超级用户时才能对只读文件进行编辑