![Linux嵌入式系统开发从小白到大牛](https://wfqqreader-1252317822.image.myqcloud.com/cover/667/41398667/b_41398667.jpg)
2.3 Linux操作系统下的vi和vim编辑器
vi编辑器是Linux文本编辑器中最流行的编辑器之一,类似Windows自带的记事本编辑软件。不同的是vi编辑器没有记事本操作方便,用户在使用时,首先要掌握vi编辑器的几种工作模式,然后要了解使用vi常用的编辑命令。网络运维选用vi编辑器的原因,是因其占用网络带宽小。vi编辑器功能非常强大,是Linux操作系统中的重要组成部分。
vi编辑器有三种工作模式,分别是浏览模式、插入模式以及底行模式。浏览模式下可以控制屏幕光标的移动,可以对字符、字或行进行删除,还可以执行移动、复制等操作,用户在任何模式下只需要通过Esc键就可以返回浏览模式;在用户输入i关键字符时,vi编辑器就进入了插入模式;当用户在浏览模式下输入冒号(:)则进入底行模式。vi编辑模式转换,如图2-19所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/36_01.jpg?sign=1739701644-4JqufD96cJdwU20j7XJby4mD0YnvX2w4-0-efe0b03f804b63398cb397508ac7075b)
图2-19 vi编辑模式切换
2.3.1 vi的基本操作
在Linux操作系统中,Linux内核是内置vi编辑器的,不需要Linux系统安装完成后在线安装。因为vi编辑页面和我们习惯使用的记事本操作方式完全不同,操作上不是很友好,Linux下很多程序接口可以直接使用它进行编辑处理。在学习如何使用vi编辑器之前,用户可以先查看一下它的版本,如图2-20所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/36_02.jpg?sign=1739701644-DISegd96tmh8LI534AaDAqwjmnpfiwbF-0-786edfd88a2e673b420f2be03a611241)
图2-20 查看vi编辑器版本
vi编辑器的命令非常多,初学者刚开始使用时会不习惯,因此掌握vi编辑器使用方式的第一步就是要先了解它的常用命令,新手可以对照表2-1的命令,多多练习vi的编辑方式。
表2-1 vi编辑常用命令表
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/37_01.jpg?sign=1739701644-NmxOu2FX5QPs5dewIrDL4mRTTHcdz8EB-0-4a1b5087a340819afbacec24ccd7fc88)
(续)
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_01.jpg?sign=1739701644-tHpBFpaipeWavuvOV9qZV9lubwPlUscc-0-3ecb55a46ef731b342fa2618adc59a9f)
对于vi编辑器的基本操作,我们主要演示vi编辑器对文件的编辑和保存操作,具体操作细节如图2-21和图2-22所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_02.jpg?sign=1739701644-x3huQnsajuQ9RAyr8EtXW9CZJHS1LUIa-0-7d3b7f196b9b3d04eaf8d1ea2df37ab8)
图2-21 编辑操作
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_03.jpg?sign=1739701644-XiTpWJ7PMIfqcamawnmzOJgnnUzX0ePV-0-7d41f7ed6bcdaff39c0077cd7b5fe5e2)
图2-22 保存操作
2.3.2 vim的基本操作
vim编辑器是vi编辑器的升级版,最新发行的Linux系统也逐渐将vim内置。对于嵌入式Linux系统开发来说,掌握vim编辑器有利于提高代码编写的效率。vim编辑器和vi编辑器相比更加方便,但是vim不属于内置在Linux中的软件,大部分的Linux系统需要在线安装vim支持包,如图2-23所示。
vim支持包安装完成以后,可以通过vim命令查看支持包的版本信息,如图2-24所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_01.jpg?sign=1739701644-WXMUsRGHZvuPoQUHlkTfoxOBJ57wXKGX-0-171eebb196292cb68e251e4ad61fc0aa)
图2-23 在线安装vim支持包
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_02.jpg?sign=1739701644-0DvFdVrbyRmuh5JLu7nkRkG9kmzjQocO-0-593505e13660d43138565e90aece7a0b)
图2-24 vim版本信息
为了能够更好地区别vi编辑器和vim编辑器,特别选择分别由vi和vim编写的hello world的c程序文件,如图2-25和图2-26所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_03.jpg?sign=1739701644-HtBSnbnv35IAUbsTgYPlFUl66hey9X9q-0-850c11168b87f09ccef60f7ccb78e674)
图2-25 vi编辑器编写
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_04.jpg?sign=1739701644-5BIQImsz4pFaRWK1PbYLGNajzFFa9yAa-0-d54beaf22943b587581c56804232e76f)
图2-26 vim编辑器编写
作为vi编辑器的升级版,vim在使用上更简单方便,不仅增加了颜色代码提示、编译及错误跳转等编程功能,还增加了模式切换提醒功能,当用户键入i字符时,尾行显示“插入”字样。回到浏览模式时“插入”字样消失,用户键入,行列号提示消失。vim的基本操作指令和vi相兼容,因此这里不再赘述。