Vi是一款包含在大多数Linux系统中的强大的文本编辑器,甚至在嵌入式Linux中也有vi的芳踪。有时候你会不得不在一个没有更加友好的文本编辑器的系统上编辑文本,所以了解些vi的知识还是很有必要的。
与Nano(一个易于使用的终端文本编辑器)不同,vi并不会执子之手然后在屏幕上提供给你一系列的快捷键。它是一个基于模式的文本编辑器,同时支持插入模式和命令模式。
入门指南
vi是一款命令行(terminal)应用,因此你需要从终端(terminal)窗口中启动它。如果你想打开一个现有的文件,你可以使用vi /path/to/file这样的命令。如果该文件不存在,命令vi /path/to/file同样可以正常工作,这时vi会创建一个新的文件并且当你保存的时候把它写到指定的位置。
如果你要编辑一个系统文件的话,不要忘了使用sudo。比如你想要编辑fstab这个文件,那么键入sudo vi /etc/fstab。如果你在使用的Linux发行版不是Ubuntu系列的,那么你可能需要使用su命令。
命令模式
当你刚用vi打开一个文件的时候,你将看到类似下面的界面。看上去好像直接开始打字就可以了,不过事实并非如此。vi是一款模式文本编辑器,你打开它的时候是在命令模式。在当前屏幕上打字可能会导致意想不到的效果。
当vi出于命令模式时,你可以使用方向键移动光标。按下x键可以删除当前光标处的一个字符。在vi中还有很多其他的删除命令,例如键入dd(按d键两次)会删除一整行的文本。
在命令模式下,你可以剪切或者粘贴文本。将光标移动到你想要剪切或者粘贴的文本的左边或者右边,然后按v键,接着移动光标来选择文本,最后按y键或者x键来选择复制还是剪切这段文本。把光标移动到你想要的位置,然后按p键就可以把你想要复制剪切的文本粘贴下来了。
推荐阅读:
Vim学习指南 http://www.linuxidc.com/Linux/2013-08/89096.htm
快速学会 Vi编辑器 http://www.linuxidc.com/Linux/2013-08/88586.htm
强大的Vim 编辑器 http://www.linuxidc.com/Linux/2013-07/87544.htm
在CentOS 6.2上搭建Vim开发环境 http://www.linuxidc.com/Linux/2013-07/87363.htm
Vim 7.4a 发布,全新更快的正则表达式引擎 http://www.linuxidc.com/Linux/2013-07/87035.htm
CentOS 5.4 安装高亮Vim编辑工具 http://www.linuxidc.com/Linux/2013-06/86508.htm
Vim技巧分享:C语言设置 http://www.linuxidc.com/Linux/2012-12/77124.htm
更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2
插入模式
除了命令模式,你现在需要了解的一个模式就是插入模式,该模式允许你在vi中插入新的文本。一旦你了解了,进入插入就是一件非常简单事情——只不过在你把光标移动到需要的位置之后按一下i键就可以了。现在开始打字的话,vi就会把你键入的字符发送到文件里,而不是试着把它们解释为命令。
一旦你在插入模式下完成工作了,只需要按ESC键就可以返回到命令模式了。
保存以及退出
你可以在命令模式保存或者退出vi。首先通过按ESC键来确保你现在处于命令模式中(如果你已经处于命令模式,按ESC键不会做任何其他的事情)。
键入:wq然后回车,可以将文件写入磁盘并且退出vi。你也可以把这个命令分解开用——例如键入:w回车来将文件写入磁盘但不退出,然后键入:q回车来退出vi但不保存文件。
如果你已经修改过文件了,那么vi是不会允许你在没有保存的情况下退出的。不过你可以键入:q!回车来忽略这一警告。
如果你在寻找一个易于使用的命令行文本编辑器的话,考虑一下Nano。大多数Linux发行版都会预装Nano,但是嵌入式系统或者其他的一些定制系统通常仅包含vi。