VIM操作基础命令
VIM操作基础命令
1 文件操作
1.1 打开文件
VIM 使用 –o 或 –O 选项打开多个文件,其中 –o 表示垂直并排,例如 vim -o lesson4 lesson5 lesson6。大O表示水平排列
- 对于垂直并排的文件:使用 ctrl + w + 上、下方向,表示上、下切换文件;
- 对于水平并排的文件:使用 ctrl + w + 左、右方向,表示左、右切换文件。
- 退出动作是针对所有的(ALL):qa、qa!、wqa
1.2 退出、保存文件
按键 | 含义 |
:w filename |
保存为filename文件名,filename为空保存当前文件 |
:q |
退出编辑 |
:q! |
放弃修改直接退出 |
:qa、qa!、wqa | 退出所以文件 |
1.3 vim键入shell命令
输入 :!ls / ,可以在切换到shell命令ls,查看root目录下文件列表
2 光标操作
按键 | 含义 |
h | 左 |
j | 下 |
k | 上 |
l | 右 |
3 插入模式
按键
|
含义
|
i
|
在光标的前边进入插入模式 |
I
|
在光标所在行的行首进入插入模式 |
a
|
在光标的后边进入插入模式 |
A
|
在光标所在行的行尾进入插入模式 |
o
|
在光标所在行的下方插入空行并进入插入模式 |
O
|
在光标所在行的上方插入空行并进入插入模式 |
s
|
删除光标指定的字符并进入插入模式 |
S
|
将光标所在行清除并进入插入模式 |
4 普通模式
4.1 通用操作
按键
|
含义
|
0
|
将光标定位到行首的位置 |
^
|
同上 |
$
|
将光标定位到行尾的位置 |
b
|
将光标定位到光标所在单词的起始处 |
e
|
将光标定位到光标所在单词的结尾处 |
w
|
将光标定位到下一个单词的起始处(注意,是光标所在单词的下一个单词噢^_^) |
gg
|
将光标定位到文件的开头 |
G
|
将光标定位到文件的末尾 |
u
|
撤销最后一次修改 |
U
|
撤销对整行的修改 |
Ctrl + r
|
恢复撤销的内容 |
Ctrl + g
|
查看文件名等状态 |
%
|
匹配(),[],{}的另一部分 |
4.2 删除操作
按键
|
含义
|
d0
|
删除光标从当前位置(不包含)到该行行首的所有字符 |
d^
|
同上 |
d$
|
删除从光标当前位置(包含)到该行行尾的所有字符 |
db
|
删除从光标当前位置(不包含)到单词起始处的所有字符 |
de
|
删除从光标当前位置(包含)到单词结尾处的所有字符 |
dw
|
删除从光标当前位置(包含)到下个单词起始处的所有字符 |
dh
|
删除光标前面一个字符 |
dl
|
删除光标指定的字符 |
dj
|
删除光标所在行以及下一行的所有字符 |
dk
|
删除光标所在行以及上一行的所有字符 |
dd
|
删除光标所在行的所有字符 |
dgg
|
删除光标所在行(包含)到文件开头的所有字符 |
dG
|
删除光标所在行(包含)到文件末尾的所有字符 |
x
|
删除单个字符 |
可与数字进行组合,如3dj,表示删除光标下面3行
4.3 复制、粘贴
按键
|
含义
|
y
|
复制命令 |
yy
|
复制当前行 |
p
|
将粘贴板内容粘贴到光标前 |
P
|
将粘贴板内容粘贴到光标后 |
r
|
替换命令,单个字符 |
可与数字进行组合,如3k向上移动3行
4.4 查找、替换
按键 | 含义 |
/findcontent | 光标将定位到光标开始时至查找到的第一个内容处。如需查找下一个,则按下enter键,按下n键查找下一个,按下N查找上一个 |
:行号 |
光标跳转到某行 |
:s/old/new | 将光标所在行的第一个 old 替换为 new |
:%s/old/new/g | 替换整个文件中每个匹配的字符串 |
:%s/old/new/gc |
在替换时vim咨询弹出 (y/n/a/q/l/^E/^Y) 确认信息:
|
:5,13s/old/new/g |
替换第 5 行到第 13 行之间的所有old为new |
删除空格行:非编辑状态下输入: g/^$/d
删除行首空格:非编辑状态下输入: %s/^\s*//g
删除行尾空格:非编辑状态下输入: %s/\s*$//g
VIM删除空白行: 在命令状态下输入: :g/^\s*$/d
:g 代表在全文档范围内 ^代表行的开始 \s*代表空白字符 &代表行的结束 d代表删除 用//将3段代码隔开
5 可视模式
普通模式下按v键进入可视模式
可视模式下使用hjkl选中行,使用“数字 + >”,向右缩进数次。其中,>表示右缩进,<表示左缩进