VI 编辑器的命令、模式和选项介绍

vi 编辑器是一个基于命令行的、功能强大的文本编辑器,最早为 unix 系统开发,后来也被移植到许多的 unix 和 linux 发行版上。
在 linux 上还存在着另一个 vi 编辑器的高阶版本 —— vim(也被称作 vi improved)。vim 只是在 vi 已经很强的功能上添加了更多的功能,这些功能有:
支持更多 linux 发行版,
支持多种编程语言,包括 python、c++、perl 等语言的代码块折叠,语法高亮,
支持通过多种网络协议,包括 http、ssh 等编辑文件,
支持编辑压缩归档中的文件,
支持分屏同时编辑多个文件。
接下来我们会讨论 vi/vim 的命令以及选项。本文出于教学的目的,我们使用 vi 来举例,但所有的命令都可以被用于 vim。首先我们先介绍 vi 编辑器的两种模式。
命令模式
命令模式下,我们可以执行保存文件、在 vi 内运行命令、复制/剪切/粘贴操作,以及查找/替换等任务。当我们处于插入模式时,我们可以按下escape(esc)键返回命令模式
插入模式
在插入模式下,我们可以键入文件内容。在命令模式下按下i进入插入模式。
创建文件
我们可以通过下述命令建立一个文件(lctt 译注:如果该文件存在,则编辑已有文件):
$vi filename
一旦该文件被创建或者打开,我们首先进入命令模式,我们需要进入输入模式以在文件中输入内容。我们通过前文已经大致上了解这两种模式。
退出 vi
如果是想从插入模式中退出,我们首先需要按下esc键进入命令模式。接下来我们可以根据不同的需要分别使用两种命令退出 vi。
不保存退出 – 在命令模式中输入:q!
保存并退出 – 在命令模式中输入:wq
移动光标
下面我们来讨论下那些在命令模式中移动光标的命令和选项:
k将光标上移一行
j将光标下移一行
h将光标左移一个字母
l将光标右移一个字母注意:如果你想通过一个命令上移或下移多行,或者左移、右移多个字母,你可以使用4k或者5j,这两条命令会分别上移 4 行或者右移 5 个字母。
0将光标移动到该行行首
$将光标移动到该行行尾
ng将光标移动到第 n 行
g将光标移动到文件的最后一行
{将光标移动到上一段
}将光标移动到下一段
除此之外还有一些命令可以用于控制光标的移动,但上述列出的这些命令应该就能应付日常工作所需。
编辑文本
这部分会列出一些用于命令模式的命令,可以进入插入模式来编辑当前文件
i在光标所在行的位置插入内容
i在光标所在行的行首插入内容
a在当前光标之后插入内容
a在当前光标之后插入内容
o在当前光标所在行之前添加一行
o在当前光标所在行之后添加一行
删除文本
以下的这些命令都只能在命令模式下使用,所以首先需要按下esc进入命令模式,如果你正处于插入模式:
dd删除光标所在的整行内容,可以在dd前增加数字,比如2dd可以删除从光标所在行开始的两行
d$删除从光标所在行开始的所有行
d^删除从文件开始直到光标所在行的所有行
dw删除从光标所在位置直到下一个词开始的所有内容
复制与黏贴
yy复制当前行,在yy前添加数字可以复制多行
p在光标之后粘贴复制行
p在光标之前粘贴复制行
上述就是可以在 vi/vim 编辑器上使用的一些基本命令。

Airpods2有什么新功能
服务化改造实践(一)| Dubbo + ZooKeeper
Diodes公司的双向8通道电位转换器提供宽电压范围及弹性输出选项
天才少年稚晖君官宣智元人形机器人「远征 A1」即将发布
CVE漏洞—PHPCMS2008 /type.php代码注入高危漏洞预警
VI 编辑器的命令、模式和选项介绍
微软中国与小冰公司达成战略合作,深化AI+云计算商业化行业解决方案落地
版权保护加密芯片MOD208示例程序与参考设计
什么是安全芯片
创想三维2022年十大精彩事件,邀您一起回顾!
vivoZ5评测 全能ACE向旗舰看齐
INTEST公司成功入选湖北省第五批专精特新中小企业
一些能够实现5G基站和网络的关键RF通信技术
电子芯闻早报:中国自主芯片逆袭,VR很火热
功率放大金属颗粒材质识别应用案例
华为p50芯片制造公司排名
2017年手机、VR设备、电视等关键零部件趋势预测
FPGA未来的发展分析
小功率音频放大器MC34119
Delta-Sigma A/D转换器原理及其PSpice仿真