Vim快捷键

1、移动光标

motion——表示操作范围的指令

按键含义
h
j
k
l
0将光标定位到行首
^同上
$将光标定位到行尾的位置
b将光标定位到光标所在的单词的起始处(begin)
e将光标定位到光标所在单词的结尾处(end)
w将光标定位到下一个单词的起始处
gg将光标定位到文件的开头
G将光标定位到文件的末尾
H光标移动到这个屏幕最上方那一行的第一个字符
M光标移动到这个屏幕中央那一行的第一个字符
L光标移动到这个屏幕最下方那一行的第一个字符
n[Enter]光标向下移动n行
Ctrl + f屏幕【向下】移动一页
Ctrl + b屏幕【向上】移动一页
Ctrl + d屏幕【向下】移动半页
Ctrl + u屏幕【向上】移动半页

2、模式

2.1、基本模式

  • 普通模式
  • 插入模式:小写字母i进入插入模式,Esc退出并进入普通模式

进入插入模式的各种方法

敲击按键含义
i在光标的前边进入插入模式
I(大写i在光标所在行的行首进入插入模式
a在光标的后边进入插入模式
A在光标所在行的行尾进入插入模式
o在光标所在行的下方插入空行并进入插入模式
O在光标所在行的上方插入空行并进入插入模式
s删除光标指定的字符并进入插入模式
S将光标所在行清除并进入插入模式
  • 可视模式
  • 选择模式
  • 命令行模式
  • Ex模式

2.2、派生模式

  • 操作符等待模式
  • 插入普通模式
  • 插入可视模式
  • 插入选择模式
  • 替换模式

3、页面跳转

按键含义
[Ctrl]+[f]屏幕向下移动一页,相当于page down按键
[Ctrl]+[b]屏幕向下移动一页,相当于page up按键

4、查找与替换

按键含义
/word向下寻找一个名称为word的字符串。例如/mark
?word向上寻找一个名称为word的字符串。例如?mark
n向后查找下一个。如输入/mark后,再按下n,表示继续向下查找“mark”这个字符串
N向前查找前一个。如输入?mark后,再按下n,表示继续向下查找“mark”这个字符串
:n1,n2s/word1/word2/g在第n1和n2行之间寻找word1,并将word1替换为word2
1,$s/word1/word2/g在第1行和最后一行之间寻找word1,并将word1替换为word2
:1,$s/word1/word2/gc在第1行和最后一行之间寻找word1,并将word1替换为word2。且在替换前提示用户确认(confirm)是否需要替换

5、删除

按键含义
x,X在一行字中,x为向后删除一个字符,X为向前删除一个字符
nx连续向后删除n个字符
dd删除光标所在的那一整行
ndd删除光标所在的向下n行
d1G删除光标所在到第一行的所有数据
dG删除光标所在到最后一行的所有数据
d0 或 d^删除从光标所在处到该行的最前面一个字符
d$删除从光标所在处到该的最后一个字符
c重复删除多个数据,例如向下删除10行 【10cj】

6、复制

按键含义
yy复制光标所在的哪一行
nyy复制光标所在的向下n行
y1G复制光标所在行到第一行的数据
yG复制光标所在行到最后一行的数据
y0 或 y^复制光标所在的那个字符到该行行首的所有数据
y$复制光标所在的那个字符到改行行尾的所有数据

7、粘贴、合并、撤销

按键含义
p,Pp为将已复制的数据在光标下一行粘贴,P为粘贴在光标上一行。例如,目前光标在第20行,且已经复制了10行数据。则按下p后,那10行数据会粘贴在原本的20行之后,即由21行开始粘贴。但是如果按下P,那么原本的的第20行会被变成30行
J将光标所在行与下一行的数据合成同一行
u复原上一个操作

8、行号

按键含义
:set nu显示行号,设置之后,会在每一行的前缀显示该行的行号
:set nonu取消行号

9、可视区块(Visual Block)

需求:将文件hosts.txt中的每一行文本加上一列host[n]

例如192.168.1.1 host1.class.net host1

192.168.1.1    host1.class.net
192.168.1.2    host2.class.net
192.168.1.3    host3.class.net
192.168.1.4    host4.class.net
192.168.1.5    host5.class.net
192.168.1.6    host6.class.net
192.168.1.7    host7.class.net
192.168.1.8    host8.class.net
192.168.1.9    host9.class.net

在传统或现代的图形编辑器似乎不容易达到这个需求,但是Vim是办得到的,那就使用可视区块(Visual Block)。当我们按下v或V或【Ctrl】+ v,这个时候光标移动过的地方开始反白,这三个按键的意义分别是:

按键含义
v字符选择,会将光标经过的地方反白选择
V行选择,会将光标经过的行反白选择
[Ctrl] + v可视区块,可以用矩形的方式选择数据
y将反白的地方复制起来
d将反白的地方删除掉
p将刚刚复制的区块,在光标所在出粘贴

实践操作:

  1. 将光标移动到第一行的host的那个h上面,然后按下【Ctrl】+ v,左下角出现可视区块示意字样:
    在这里插入图片描述

  2. 将光标移动到最底部,此时光标移动过的区域会反白
    在这里插入图片描述

  3. 此时你可以按下【y】进行复制,反白的区块就会消失不见。

  4. 最后,将光标移动到第一行的最右边,并且在用编辑模式向右按两下空格键,回到一般命令模式后,再按下【p】后,即可完成。

在这里插入图片描述

在这里插入图片描述

10、多文件编辑

vim file1 file2

:files  #查看编辑的文件数据

:n  #切换文件

11、多窗口功能

:sp   # 打开一个新窗口

12、配置

vim ~/.vimrc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值