vim程序下的模式及相关指令
1 命令模式
1).set+参数:调整文件的工作方式
例如:
指令 | 指令介绍 |
---|---|
set nu | 显示行号 |
set nonu | 取消行号显示 |
set mouse=a | 显示鼠标(可使用鼠标拉选多行文件) |
set cursorline | 显示行线 |
注意:在vim程序中设定的vim工作方式是临时的,在vim关闭后设定会还原
vim下永久设定:
vim /etc/vimrc (编辑vim的配置文件 )
set参数信息
2).字符的搜索
指令 | 指令介绍 |
---|---|
/关键字 | 会高亮显示关键字 ( n向下匹配 N向上匹配 ) |
:noh | 取消高亮显示的关键字 |
3).字符的管理
#复制指令 y
指令 | 指令介绍 |
---|---|
yl | 复制光标所在的一个字母 |
y3l | 复制3个字母 ( 若光标位于行尾的最后一个字母,该指令相当于‘yl‘ ) |
yw | 复制一个单词 |
y3w | 复制三个单词 |
yy | 复制光标所在的一行 |
y3y | 复制三行 |
#删除指令 d
指令 | 指令介绍 |
---|---|
dl | 删除一个字母 |
d3l | 删除三个字母 |
dw | 删除一个单词 |
d3w | 删除三个单词 |
dd | 删除光标所在的一行 |
d3d | 删除三行 |
#剪切指令 c
指令 | 指令介绍 |
---|---|
cl | 剪切一个字母 |
c3l | 剪切三个字母 |
cw | 剪切一个单词 |
c3w | 剪切三个单词 |
cc | 剪切一行 |
c3c | 剪切三行 |
注意:在剪切之后vim会进入插入模式,如果想要粘贴需要按【esc】退出插入模式,再按p粘贴
p ##粘贴
u ##撤销(撤销上一步操作 )
ctrl+r ##恢复撤销
4).vim可视化模式
ctrl+v 在这个模式下可以选择区域操作
批量添加字符:ctrl+v 选中要加入字符所在的列- ->>>按大写的I- - ->>>加入字符- - ->>>按【esc】
5).字符的替换
%s/被替换的字符/想要替换成的字符/g (其中%s表示所有的行,g表示所有的列)
例:%s/#/@/g 替换全文的#为@
例:1,5s/@/!!!/g 替换1到5行的@为!!! 且文件中其余行的会被高亮显示出来
例:/nig/,/kay/s/!/
/
g
替
换
n
i
g
和
k
a
y
之
间
的
!
为
/g 替换nig和kay之间的!为
/g替换nig和kay之间的!为 $
注:若所输入的两个单词在文件中的行首多次出现,则会自动选择相距最近的两行目标,进行替换任务,且其余未被替换的会高亮显示。
6). vim的分屏功能
指令 | 指令介绍 |
---|---|
ctrl+w 再按s | 上下分屏 |
ctrl+w 再按v | 左右分屏 |
ctrl+w 再按c | 关闭光标所在的分屏 |
ctrl+w 上下左右 | 移动光标到指定屏幕 |
:sp file | 同时编辑当前文件和另一个文件 |
注:分屏功能所分的屏幕内容是同步操作的,即改变一个屏幕内容,其他的屏幕内容会同时改变,而使用命令’:sp file’打开的另一个文件是不同步的
7).光标的移动
指令 | 指令介绍 |
---|---|
gg | 光标移动到文件的第一行 |
G | 光标移动到文件的最后 |
:数字 | 光标移动到指定的行 |
2.插入模式
插入模式下光标的移动
指令 | 指令介绍 |
---|---|
i | 光标所在位置插入 |
I | 光标所在行行首插入 |
o | 光标所在行的下一行插入 |
O | 光标所在行的上一行插入 |
a | 光标所在字符的下一个字符插入 |
A | 光标所在行的行尾插入 |
s | 光标所在字符删除并插入 |
S | 光标所在行删除并插入 |
3.退出模式
指令 | 指令介绍 |
---|---|
:q | 在文件内容没有被改变时直接退出 |
:q! | 强制退出不保存,在改变文件后不想保存时使用 |
:wq | 保存退出 |
:wq! | 强制退出保存 (如果所编辑文件为只读文件,使用‘:wq’就不能保存并退出,因此使用‘:wq!’强制退出并保存,但必须要求是当前用户的文件,或当前操作的用户是超级用户) |