![6bd0ee3548c405e199b1d577662a26de.png](https://i-blog.csdnimg.cn/blog_migrate/35fda65188b19f76e08ec4aae6e5a10b.jpeg)
# 前言/概念
虽然现在开发代码有各种图形界面化的IDE,但是大部分公司linux下开发,编写源代码,可能都是通过ssh远程访问的个人代码环境,只有linux命令行,所以必需要熟悉linux下的代码编辑工具。
linux一般都自带了编辑工具vi 和emacs,至于选择哪个使用属于个人爱好。我们主要介绍和熟悉一下vi编辑器。
可能平时我们看到或者听到的比较多的是, vi、vim,初学者可能比较蒙,它俩有什么区别,有什么关系呢,是两个不同的编辑器吗?
其实,vi编辑器是UNIX早期自带的文本编辑器,功能简单,并不支持语法颜色及其他炫酷功能;vim编辑器是在vi的基础上改进的版本,比vi功能更加强大,支持语法颜色显示。 总之,vim和vi其实一个东西,知道vim是vi的加强版就可以了。
Vi :visual interface,如果真正熟练掌握,会发现非常方便快捷,可以大量减少键盘和鼠标一起配合才能完成的操作。
# vi/vim的使用
vi/vim 有三种工作模式:命令模式(Command Mode) 、输入模式(Insert Mode)、底线命令模式(Last Line Mode)。
命令模式 : 用vi/vim + 文件名,直接打开文件,默认就是在命令模式下。如执行 vim LICENSE.txt后,
![66a75931f8dbe95fc1e4f9bb5739a02e.png](https://i-blog.csdnimg.cn/blog_migrate/6b0d07b8403200f86b4a9512fb166cd2.png)
在此命令模式下,如果输入以下命令:
- i 会切换到输入模式,就可以在当前文件中输入字符了(通过Esc可以返回命令模式)。
- : 会切换到底行命令模式,就可以在最底一行输入支持的命令了(通过Esc可以返回命令模式)。
命令模式存在的意义是,可以进入输入模式或底行命令模式,而且可以对光标进行移动控制,通过该模式下特有的命令进行字符删除、行复制粘贴、段落复制粘提等。
输入模式:在命令模式下,按i进入输入模式,可以编辑当前文件,如
![0e694306c0b731b73041fd66fcda6fb5.png](https://i-blog.csdnimg.cn/blog_migrate/00eb6bd6658b80e752251a5693064d8f.png)
输入模式存在的意义就是直接输入文本数据。通过Esc可以返回命令模式。
底行命令模式:在命令模式下,输入“:”就可以进入底行命令模式(注意无法从输入模式直接进入底行命令模式)。通过Esc可以返回命令模式。
如
![ea97e2035384bcba30369b9415d9c437.png](https://i-blog.csdnimg.cn/blog_migrate/5429110ebe524218b4ee774eb69e6299.png)
底行命令模式存在的意义是,可以执行一些比较特殊的功能,比如保存文件、退出vi/vim、在文件中快速查找、替换字符串等其他操作,用熟悉了很强大。如,我想在当前文件查找“Linus”,输入“:”后,就可以继续输入命令“/Linus”:
![21237dd1d360d019edc4df09e8c29a46.png](https://i-blog.csdnimg.cn/blog_migrate/b87a655ffee5bfc90d3d811efe56a106.png)
以下是各模式一些命令和操作记录,供参考:
![7846d30baa1833cc9ab6c4e7a194e4c4.png](https://i-blog.csdnimg.cn/blog_migrate/8729e4d5d39e06655e857e5b53e2049c.jpeg)
![e1048d0cd960671f1658f3f770479f92.png](https://i-blog.csdnimg.cn/blog_migrate/91e0f0af71d1e4e4b81d969279885e86.jpeg)
![7fad81d55e77825b65a5e46cc2476f87.png](https://i-blog.csdnimg.cn/blog_migrate/229089729500ac069664fb39c832ef66.jpeg)
![767e862155d4bb3cb75cf3144608c95d.png](https://i-blog.csdnimg.cn/blog_migrate/449ab7cbeca7053d981f7cd12302c793.jpeg)
还有两张图供可保存手机,随时随地参考学习,可见号内文章 或 加好友,发送“vi” 即可获取。
# 结语
以上基本属于vi/vim常规操作命令,只要我们不断使用,练习强化,最终都会熟练于心。vim 相当于是vi的增强,对于人的视觉更加友好,而且vi发展了这么多年,基于vim也有很多的小插件,有些功能也非常强大,如果用心搭建,也可以媲美一个IDE了。让我们一起忘掉鼠标,疯狂敲代码吧! 希望文章对你有用。