就像一个人不可能一夕之间成为技艺高超的钢琴家,Linux 命令也不是花一个下午就能熟练掌握的,这需要很长时间的练习。 本章节将介绍 UNIX 传统核心软件之一——文本编辑器 vi 。通过学习并不能使读者成为 vi 专家,但是在学习之后,读者至少能够做到在 vi 中演奏。
现在这个时代存在着很多图形界面编辑器 和 易用的基于文本的编辑器,例如nano,那为何还要学习 vi ?
这有三条充分的理由:
1976年,加州大学伯克利分校的学生Bill Joy之后又成为 Sun公司创始人之一,写出了 vi 的第一个版本。 vi 出自单词“ visual ”,含义是能够在视频终端上用移动光标来进行编辑。在图形界面编辑器出现之前是行编辑器的天下,用户每次只能在一行文本上进行编辑。使用行编辑器的时候,用户需要告知编辑器是在哪一行进行什么样的操作,比如添加或删除。而视频终端(而非基于打印机的终端,比如电报)的来临使得全屏幕编辑成为可能。 由于 vi 融合了强大的行编辑器,vi 用户也可以同时使用行编辑的命令。
大多数 Linux 发行版配备的并不是真正的 vi,而是 Barm Moolenaar 编写的 vi 加强版——vim(Vi Improved)。 vim 是传统 UNIX 系统中 vi 的实质性改良版。通常,vim 的硬连接(或别名)指向Linux 系统的 vi 名称。 接下来的讨论就是建立在用户使用名为 vi 的 vim 程序这样一个假设上的。