Vim文档编辑
Vim是由vi发展演变过来的文本编辑器,因其具有语法高亮显示、多视窗编辑、代码折叠、
支持插件等功能,现已成为众多Linux发行版本的标配。对于初学者来说,Vim往往是生涩、
难以学习的文本编辑器,但当你完全掌握了这种编辑器后,你会发现自己的工作效率会比没有
使用Vim之前提升了很多倍。
2.2.1 Vim工作模式
Vim具有多种工作模式,常用的工作模式有:普通模式、插入模式、命令模式。其中,普
通模式可以实现基本的光标移动与大量的快捷键操作,插入模式可实现文本的基本编辑功能,
命令模式通过输入特定的指令实现特定的功能,如保存与退出等。
直接输入vim命令,即可开启该文本编辑器,默认将创建一个新的文档(保存时需要指定
文件名)。另外,如果vim命令后跟了文件名参数,则需要看该文件是否存在,如果存在,Vim
将打幵该文件,如果不存在,Vim将创建该文件。
Vim编辑器默认会进入普通模式,插入模式可以通过以下按键进入(参见表2-1)。
按键 功能描述
a 进入插入模式,后续输入的内容将插入至当前光标的后面
A 进入插入模式,后续输入的内容将插入至当前段落的段尾
i 进入插入模式,后续输入的内容将插入至当前光标的前面
I 进入插入模式,后续输入的内容将插入至当前段落的段首
o 进入插入模式并在当前行的后面创建新的空白行
O 进入插入模式并在当前行的前面创建新的空白行
当需要退回到普通模式或不知道自己当前处于什么模式时,可以通过Esc键返回到普通模式。
最后,在普通模式下输入“:”,即可进入命令模式;在“:”后输入指令,即可实现特定的
功能。
• 42 •
第2章命令工具
2.2.2 Vim光标操作
Vim中最简单的移动光标的方式是使用方向键(上、下、左、右)操作,但这种方式的效
率低下,更高效的方式是使用快捷键,常用的快捷键如表2-2所示,所有的快捷键均在普通模
式下直接使用。
表2-2
快捷键 功能描述
h 光标向左移动一位
j 光标向下移动一行(以回车为换行符)
k 光标向上移动一行
I 光标向右移动一位
gg 移动光标至文件首行
G 移动光标至文件末尾
nG 移动光标至第n行(n为数字,如n为10时表示第10行)
A 光标移至当前行的首字符
$ 光标移至当前行的尾字符
fx 光标移至当前行的下一个X字符处
Fx 光标移至当前行的上一个X字符处
w 光标向右移动一个单词
nw 光标向右移动n个单词(n为数字)
b 光标向左移动一个单词
nb 光标向左移动n个单词(n为数字)
2.2.3 Vim编辑文档
在Vim编辑器中编辑文档内容主要有两种常用的方式:进入编辑模式操作和快捷键操作。
进入编辑模式的方法已经在表2-1中有详细的描述,进入编辑模式后,即可以通过移动光标进
行增加、删除、修改的基本操作,这种方法也是最简单的方式。另外,快捷键操作方式是在普
通模式下输入相应的快捷键实现对应的功能,快捷键功能描述参见表2-3o
表2-3
操作快捷键 功能描述
X 删除光标当刖字符
• 43 •
Linux运维之道
续表
操作快捷键 功能描述
dd 刪除一行
ndd 删除n行(n为数字)
d$ 删除光标至行尾的内容
J 删除换行符,可以将两行合并为一行
u 撤销上一步操作,可以多次使用im表示撤销两步操作
rx 将光标当前字符替换为X (X为任何键盘单个输入)
yy 复制当前行
p 粘贴至当前行之后
p 粘贴至当前行之前
2.2.4 Vim查找与替换
当文档很长时,我们可以通过查找快速定位要找的内容,在Vim中通过“/”关键词实
现自上往下的查找功能,如,/host在当前文档的光标处向下查找host并显示,如果一个文
档中有多个host,可以通过快捷键n跳转至下一个匹配的关键词处,快捷键N将跳转至上
一个匹配的关键词处。另外,“?”关键词实现了自下往上的查找功能,如,?host从当前文
档的光标处向上查找host并显示,此时快捷键n表示查看上一匹配,N表示查看下一匹配。
Vim提供了非常好用的替换功能,可以快速完成大量的替换工作。
[root@centos6 etc]# cp /etc/passwd /root/
[root@centos6 etc]# vim /root/passwd
通过上面两条命令复制一份临时测试文档并编辑,我们可以对该文件实现多种替换功能,
指令 功能描述
?/root/admin/ 将光标当前行中第一个出现的root替换为admin,没有则不替换
?/root/admin/g 将光标当前行中所有的root替换为admin
:3,5 s/sbin/bin/g 将第三行至第五行之间的所有sbin替换为bin
:% s/nologin/fault/g 将所有行的nologin都替换为fault
• 44 •
第2章命令工具
2.2.5 Vim保存与退出
一般情况下,我们会通过命令模式输入特定的指令实现保存与退出功能,常用指令详见
表2-5 o
表2-5
指令 功能描述
q! 不保存并退出
wq 保存并退出
X 保存并退出
w 保存
w b.txt 另存为b.txt
提示
Vim提示错误信息E32: No file name时,说明你没有为文件设置文件名,需要在w后设置
文件名称。
另一种保存方式为快捷键操作,在普通模式下输入ZZ,即可实现保存并退出文档。
2.2.6 Vim小技巧
1.显示行号
显示当前行是第几行的方式有很多,可以通过为文档添加行号来实现,添加行号的方法是
在命令模式下输入:set number或简写:set nu即可。
2. 忽略大小写
在Vim中查找时,你可能不清楚所要找的关键词的大小写,而Vini默认是区分大小写的,
这时可以通过在命令模式下输入:set ignorecase,实现忽略大小写。
3. 多窗□编辑
当需要同时编辑多个文档时,分割窗口就尤为重要了,最简单的方式是在命令模式下输
入:split。如此可以实现编辑同一个文档的不同行,至于窗口的切换,可以使用如下快捷方式:
Ctrl+w+h Ctrl+w+l
Ctrl+w+j Ctrl+w+k
LIUNX基本命令之vim
最新推荐文章于 2024-09-05 20:46:42 发布