目录
motion——表示操作范围的指令
该指令配合其他操作指令即可完成对特定范围文本的相应操作。(因为用到所以放在这里)
按键 | 说明 |
0 | 将光标定位到行首的位置 |
^ | 同上 |
$ | 将光标定位到行尾的位置 |
b | 将光标定位到光标所在单词的起始处 |
e | 将光标定位到光标所在单词的结尾处 |
w | 将光标定位到下一个单词的起始处 |
gg | 将光标定位到文件开头 |
G | 将光标定位到文件末尾 |
一、粘贴命令
在vim下使用删除命令并不会直接删掉,而是保存在相应寄存器中,使用粘贴命令可以将其粘贴出来。
按键 | 说明 |
p | 粘贴到光标之后 |
P | 粘贴到光标之前 |
补充说明:如果粘贴的是整行为单位,那么将在光标的下一行或上一行开始粘贴,否则在光标之后/前粘贴。
二、拷贝命令
y [数字] motion
从光标处开始(包含光标处)。
yy 即可复制当前行。
三、替换命令
r 替换光标所在的字符;
【用法】按下r键后输入新字符。[数字 + r] 表示从光标处开始将多个字符统一替换新字符,注意是字符不是字符串。
四、替换模式
R 进入替换模式。
【说明】替换模式下输入的字符会覆盖光标所指字符,而被覆盖的字符不会被清除,按下Backspace键即可恢复(替换命令r没有此功能)。
五、修改命令
c [数字] motion
【说明】执行该命令是会先将所选目标清除,然后进入插入模式输入。因此替换与修改是不一样的。
六、查看文件信息
ctrl + g
信息包括文件名、总行数、光标所在位置占全文比重。
七、跳转
(1)行号 + G
(2): + 行号
光标跳转到指定行行首。
八、定位括号
%
【用法】光标选中括号后按下%即可定位到另一半括号,如果无反应那说明该括号使用有误。
九、缩进
>>缩进
<<反缩进
当多行缩进时使用可视模式选中行再按缩进指令进行多行缩进(只需按>或<就可以缩进了)。
十、搜索指令
(1)/目标
(2)?目标
搜索指令 | /目标 | ?目标 |
搜索方向 | 从光标开始向后 | 从光标开始向前 |
n | 搜索下一个 | |
N | 搜索上一个 |
【用法】输入指令后会在终端底行出现,按Enter键开始搜索。
十个特殊符号的搜索:/\目标
十个特殊符号:.、*、[、]、^、%、/、?、~、$
十一、搜索+替换命令
指令 | 说明 |
:s/old/new | 将光标所在行的第一个old替换为new |
:s/old/new/g | 将光标所在行的所以old替换为new |
:%s/old/new/g | 将整个文件中的所有old替换为new |
:%s/old/new/gc | 同上,每次替换前先请示 |
:5,13s/old/new/g | 替换第5行到第13行中所有old为new |
十二、文件操作命令
指令 | 说明 |
:w 文件名 | 文件另存为(局部另存则进入可视模式选要另存的中文本再输指令) |
:r 文件名 | 合并文件(合并该文件与目标文件) |
vi -o 文件名1 文件名2 | 垂直分布打开两个(多个)文件 |
vi -O 文件名1 文件名2 | 水平分布打开两个(多个)文件 |
:qa | 关闭全部打开的文件(a---all) |
【说明】打开多个文件命令(vi -o与vi -O )需要在终端输入。
光标在多个文件中切换:
指令 | 说明 | |
ctrl + w +w | 将光标移到下一个文件 | |
垂直分布 | ctrl + w +上下方向键 | 将光标在上下文件中切换 |
水平分布 | ctrl + w +左右方向键 | 将光标在左右文件中切换 |
例:垂直分布打开l.c与lcz.c文件:
例:水平分布打开l.c与lcz.c文件: