![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=1738845079-reL92ceLKOwjjkI7udMQaRAdtstYoD83-0-a7f0ac984706fee64d8ff37914c46e22)
图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=1738845079-MpDWWLUveOlSoczr01uHF42dTAH5iunz-0-53c2c7ba51dd5543367aa37c054e3b7b)
图2-20 查看vi编辑器版本
vi编辑器的命令非常多,初学者刚开始使用时会不习惯,因此掌握vi编辑器使用方式的第一步就是要先了解它的常用命令,新手可以对照表2-1的命令,多多练习vi的编辑方式。
表2-1 vi编辑常用命令表
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/37_01.jpg?sign=1738845079-TwYPdbIzRVhOowwSlaUtre0S0YGJLgYp-0-14b7b0de8008def10eab07cc05f557bd)
(续)
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_01.jpg?sign=1738845079-9NyZh2o4WSBDzgI1WEtmQjEuLefcZ9GE-0-6b70478a1ac58ec252cc2b2c40487c1c)
对于vi编辑器的基本操作,我们主要演示vi编辑器对文件的编辑和保存操作,具体操作细节如图2-21和图2-22所示。
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_02.jpg?sign=1738845079-hNuOK4CS2aS5XUmWVTdt04mSXzgOwYRt-0-75d83856e3ca9be70e2824e513e7f19e)
图2-21 编辑操作
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/38_03.jpg?sign=1738845079-io6aPgyXwQrNYKCMTcBwq2k61xnHqMD3-0-7978fa66b4831c18827c8ab16f57f9ed)
图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=1738845079-AZ5g8R4K6hCuVlEubOxZFTIkIkeT6xYV-0-141af0a8f9193d4db9be7e972723fb10)
图2-23 在线安装vim支持包
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_02.jpg?sign=1738845079-oTBItoNrSXD8f0nJUHSkuH3F3VGqrGq7-0-89e2fb78009a02856cfc3adec32be976)
图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=1738845079-XP9N8NnyTjuIb6p7JeCDmJE38yoJKCES-0-c5831de79ecbcac95959304efba5242c)
图2-25 vi编辑器编写
![](https://epubservercos.yuewen.com/DEDA9F/21570843408785506/epubprivate/OEBPS/Images/39_04.jpg?sign=1738845079-Hv4ZnDvrYqW7zluZM38bNcWHO0Q05uKa-0-29d36e924731e5039c30e7708a30c941)
图2-26 vim编辑器编写
作为vi编辑器的升级版,vim在使用上更简单方便,不仅增加了颜色代码提示、编译及错误跳转等编程功能,还增加了模式切换提醒功能,当用户键入i字符时,尾行显示“插入”字样。回到浏览模式时“插入”字样消失,用户键入,行列号提示消失。vim的基本操作指令和vi相兼容,因此这里不再赘述。