首先学习如何使用 Vim 打开文件。
Vim 打开文件
使用Vim打开文件非常简单,例如在命令行模式下打开自己编写的一个文件/test/vi.test,打开方法如下:
[root@itxdl ~]# vim /test/vi.test
首次打开一个文件时,Vim 处于命令模式。此时,文件下方会显示该文件的一些信息,包括文件的总行数和字符数,以及当前光标位置。此时可以使用 命令进入输入模式对该文件进行编辑,如下图所示。
除此之外,我们还可以利用下表中打开文件的命令格式,针对具体的情况采用合适的打开方式,以大大提高我们的效率。
Vim快捷打开文件的方法Vi选项说明
vim
打开或创建一个新文件并将光标放在第一行的开头。
vim-r命令
恢复 vim 上次打开时崩溃的文件
vim-R 版本
将指定文件以只读模式放入 Vim 编辑器
vim +
打开文件并将光标放在最后一行的开头
六 + n
打开文件并将光标置于第 n 行的行首
六 +/
打开文件并将光标放在第一个匹配处
六、
在编辑文件之前,执行指定命令
使用 Vim 编辑
同样,Vim提供了大量的编辑快捷键,主要可以分为以下几类。
Vim 插入文本
从命令模式进入输入模式进行编辑,可以按I、i、O、o、A、a等键完成,使用不同的键会得到不同的光标位置,如下表所示。
插入文字快捷键功能说明
在当前光标位置插入后续输入的文本,光标后的文本相应向右移动
将后续输入的文本插入到光标所在行的行首,行首是该行第一个非空白字符,相当于将光标移动到行首,执行i命令。
在光标所在行下方插入新行。光标停在空白行的开头,等待输入文本
O(大写)
在光标所在行上方插入新行。光标停在空白行的开头,等待输入文本
插入当前光标位置后的文本
将后续输入的文本插入到光标所在行的行尾,相当于将光标移动到行尾再执行a命令
Vim 搜索文本 Vim 搜索目标文本 快捷键功能说明
/abc
从光标位置向前搜索字符串 abc
/^abc
查找以 abc 开头的行
/abc$
查找以 abc 结尾的行
从光标位置向后搜索字符串 abc
沿同一方向重复上一次搜索命令
以相反方向重复上一次搜索规范
例如,要在/etc/.vi文件中搜索字符串“root”,请运行下图所示的命令。
如果在文件中没有找到所要查找的字符串,那么在文件底部就会出现“未找到”的提示,如下图所示。
在搜索过程中需要注意的是,搜索的字符串是严格区分大小写的,例如搜索“”和“”,就会得到不同的结果。
如果要忽略大小写,输入命令“:set ic”;要调整回来,输入“:set noic”。
如果字符串中出现特殊符号,需要添加转义符“\”,常见的特殊符号有\、*、?、$等,如果出现这些字符,例如搜索字符串“10$”,则需要在命令模式下输入“/10\$”。
Vim 替换文本 Vim 替换文本 快捷键 功能说明
替换光标位置的字符
从光标位置开始替换字符,输入的内容会覆盖后面相同长度的文本内容,按“Esc”结束
:s/a1/a2/g
将当前光标所在行的所有a1替换为a2
:n1,n2s/a1/a2/g
将文件第 n1 行至 n2 行中所有出现的 a1 替换为 a2。
:g/a1/a2/g
将文件中所有出现的 a1 替换为 a2
例如想将某个文件中的“root”全部替换为“”,则输入命令有两个:
:1, $s/root/liudehua/g
或
:%s/root/liudehua/g
上述命令是在编辑模式下操作的,意思是从第一行到最后一行整个文本中搜索“root”,然后将其替换为“”。
如果刚才的命令变成:10,20 s/root//g,则只有第10行到第20行的“root”会被替换。
Vim 删除文本 Vim 删除文本快捷键 快捷键 功能说明
删除光标位置的字符
日
删除光标所在行
不对称
删除当前行之后的n行文本(包括本行)
dG
删除光标所在行到文件末尾的所有内容
删除光标位置到行尾的内容
:a1,a2d
功能:从a1行到a2行的文本内容
注意,删除的内容并没有真正被删除,而是放在了剪贴板中,将光标移动到指定位置后按“p”键就可以将删除的内容粘贴回这里。
Vim 复制粘贴文本 Vim 复制文本快捷键功能说明
将剪贴板的内容粘贴到光标后
P(大写)
将剪贴板的内容粘贴到光标前
将选定的文本复制到剪贴板
年年
将光标所在行复制到剪贴板。可以在该命令前添加数字 n 来复制多行。
嗎
将光标位置的单词复制到剪贴板
Vim中其他常用的快捷键
在某些情况下,你可能需要连接两行。例如,下面的文件包含两行文本,现在你需要将它们合并为一行(其实就是去掉两行之间的换行符)。你可以在命令模式下直接按“J”键,如下图所示。
如果你不小心删除了文件的内容,你可以使用“u”键来撤消刚刚执行的命令。如果你想撤消刚才的多个操作,可以多次按“u”键。
Vim 保存退出文本
保存和退出Vim都是在编辑模式下进行的,常用的命令如下表所示。
Vim常用保存与退出命令 命令 功能描述
:wq
保存并退出 Vim 编辑器
:wq!
保存并强制退出 Vim 编辑器
:问
退出 Vim 编辑器而不保存
:Q!
不保存并强制退出 Vim 编辑器
:w
保存但不退出 Vim 编辑器
:哇!
强制保存文本
:w
保存到文件
X!
保存文本并退出Vim编辑器,这是一个更通用的vim命令
Z Z
直接退出 Vim 编辑器
需要注意的是,“w!”和“wq!”以及类似的命令通常是在你对某个文件没有写权限的时候使用的(显示出来,如下图所示),但如果你是该文件的拥有者或者是root用户,你可以强制执行。
新版《Linux程序员指南》可以帮助你快速入门Linux从零到精通,涵盖了Linux系统知识、常用软件环境部署、Shell脚本、云平台实践、大数据集群项目实践等各个环节。
扫一扫在手机端查看
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。