跟我一起学习Vim--Vim简单使用

Vim 一些简单使用,打开文件,关闭文件,移动光标,删除命令等

1. 打开文件

1
2
3
vim +#	:打开文件,并定位到某行
vim + :打开文件,定位到最后一行
vim +/PATTERN :打开文件,定位到第一次被PATTERN匹配到的行的行首

2. 关闭文件

末行模式关闭文件

1
2
3
4
5
:q	退出
:wq 保持退出
:q! 不保存退出
:w 保存
:w! 强行保存

编辑模式下退出

1
ZZ	保存退出

3. 移动光标(编辑模式)

1) 逐字符移动

1
2
3
4
h:	左
l: 右
j: 下
k: 上

2) 以单词为单位移动

1
2
3
w:	移至下一个单词的词首
e: 移至当前或下一个单词的词尾
b: 跳至当前或者前一个单词的词首

3) 行内跳转

1
2
3
0:	零,表示跳至行首
^: 跳至当前行第一个非空白字符
$: 跳至行尾

4) 行间跳转

1
2
3
#G:	跳转至#行
G: 跳转至文档尾部
:# 末行模式跳转至#行

4. 翻屏操作

1
2
3
4
Ctrl+f	:	向下翻屏
Ctrl+b : 向上翻屏
Ctrl+d : 向下翻半屏
Ctrl+u : 向上翻半屏

5. 删除单个字符

1
2
3
4
x:	删除光标所在处向后单个字符
#x: 删除光标所在处向后#个字符
X: 删除光标所在处向前单个字符
#X: 删除光标所在处向前#个字符

6. 删除命令:d

1
2
3
4
d命令可以和跳转命令组合使用
:2,10d 末行模式删除第2行到第10行的数据
:.,10d 末行模式删除当前行到第10行
:.,$d 末行模式删除当前行到最后一行

7. 粘贴命令:p,P

1
2
3
4
p:如果删除或者复制为整行内容,则粘贴至光标所在行的下方,   
如果复制或者删除的内容为非整行,则粘贴至光标所在字符的后面
P:如果删除或者复制为整行内容,则粘贴至光标所在行的前方,
如果复制或者删除的内容为非整行,则粘贴至光标所在字符的前面

8. 复制命令 y

1
用法同d

9先删除内容,再转换为输入模式,c命令

1
用法同d

10. 替换命令 r

1
2
r:	替换单个字符
R: 进入替换模式

11. 撤销编辑操作 u

1
2
u:	撤销前一次的编辑操作,连续u可以撤销此前的n词编辑操作
Ctrl+r 撤销前一次的撤销

12. 重复此前的操作

1
.	:重复前一次编辑操作

13. 可视化模式

1
2
v	按字符选取
V 按矩形选取

14. 查找命令

1
2
/PATTERN	正向查找	n:继续下一个,N:向上选择下一个
?PATTERN 反向查找

15. 查找替换,s 末行模式下完成

1
:ADDR1,ADDR2s@PATTERN@String@gi

16. 使用vim编辑多个文件

1
2
3
4
5
6
vim	file1 file2 file3 ....
:next 切换至下一个文件
:prev 切换至前一个文件
:last 切换至最后一个文件
:first 切换至第一个文件
:qa 全部退出

17. 分屏显示一个文件

1
2
3
Ctrl+w, s	:水平拆分窗口
Ctrl+w, v :垂直拆分窗口
:qa :关闭所有窗口

18. 分窗口编辑多个文件

1
2
vim -o    file1 file2	:水平分割显示
vim -O file1 file2 :垂直分割显示

19. 将当前文件中的一部分内容另存为另外一个文件

1
2
:w
:ADDR1,ADDR2w /path/to/somewhere

20. 将另外一个文件的内容添加到当前文件中

1
:r /path/to/somefile

21. 交互shell

1
:! COMMAND

22. 高级话题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
显示或取消行号
:set number/set nu
:set nonu
设置忽略大小写
:set ic/set ignorecase
:set noigonrecase/set noic
自动缩进
:set autoindent/set ai
:set noai
查找到的文本高亮显示或取消
:set hlsearch
:set nohlsearch
语法高亮显示、关闭
syntax on
syntax off

23. vim配置文件

1
2
全局配置文件	/etc/vimrc
只对当前用户有效 ~/.vimrc
坚持原创技术分享,您的支持将鼓励我的继续创作