文章目录
- [Linux中的 `vi` 与 `vim` 使用详解](#Linux中的
vi
与vim
使用详解) -
- [1. `vi` 编辑器](#1.
vi
编辑器) -
- [1.1 什么是 `vi`](#1.1 什么是
vi
) - [1.2 `vi` 的基本用法](#1.2
vi
的基本用法) -
- [1.2.1 启动 `vi`](#1.2.1 启动
vi
) - [1.2.2 模式](#1.2.2 模式)
- [1.2.3 基本操作](#1.2.3 基本操作)
- [1.2.4 常用命令](#1.2.4 常用命令)
- [1.2.1 启动 `vi`](#1.2.1 启动
- [1.3 `vi` 的特点](#1.3
vi
的特点)
- [1.1 什么是 `vi`](#1.1 什么是
- [2. `vim` 编辑器](#2.
vim
编辑器) -
- [2.1 什么是 `vim`](#2.1 什么是
vim
) - [2.2 `vim` 的基本用法](#2.2
vim
的基本用法) -
- [2.2.1 启动 `vim`](#2.2.1 启动
vim
) - [2.2.2 模式](#2.2.2 模式)
- [2.2.3 `vim` 的增强功能](#2.2.3
vim
的增强功能) - [2.2.4 `vim` 的基本操作](#2.2.4
vim
的基本操作)
- [2.2.1 启动 `vim`](#2.2.1 启动
- [2.3 安装插件](#2.3 安装插件)
- [2.1 什么是 `vim`](#2.1 什么是
- [3. `vi` 与 `vim` 的区别](#3.
vi
与vim
的区别) - 总结
- [1. `vi` 编辑器](#1.
Linux中的 vi
与 vim
使用详解
在Linux中,vi
和 vim
都是非常流行的文本编辑器,尤其在系统管理、程序开发和配置文件编辑中被广泛使用。vim
是 vi
的增强版本,具有更多功能。下面详细讲解它们各自的特点、使用方式以及二者之间的区别。
1. vi
编辑器
1.1 什么是 vi
vi
是一种经典的文本编辑器,最早在Unix系统中出现,几乎在所有类Unix系统中都有预装。vi
是一个简单、轻量的编辑器,非常适合在命令行环境中进行快速编辑。由于其普及性和无处不在的特性,vi
已成为Linux/Unix用户的基本工具。
1.2 vi
的基本用法
1.2.1 启动 vi
在终端中输入以下命令即可打开一个文件:
bash
vi filename
- 如果文件
filename
存在,vi
将打开它进行编辑。 - 如果文件不存在,
vi
将创建一个新文件并打开。
1.2.2 模式
vi
编辑器有三种基本模式:
- 普通模式(Normal mode) :这是
vi
的默认模式,用于浏览和操作文本。启动vi
后首先进入此模式。在普通模式下可以进行复制、粘贴、删除、移动光标等操作。按Esc
键可以随时返回普通模式。 - 插入模式(Insert mode) :用于编辑文本。在普通模式下按
i
进入插入模式。插入模式下可以输入文本,按Esc
返回普通模式。 - 命令模式(Command mode) :用于执行保存、退出、查找、替换等命令。在普通模式下按
:
进入命令模式。
1.2.3 基本操作
- 插入模式 :在普通模式下按
i
开始插入文本。 - 保存文件 :在普通模式下按
:
进入命令模式,然后输入w
保存文件。 - 退出编辑器 :在普通模式下按
:
进入命令模式,然后输入q
退出。若文件有修改但未保存,可以使用:q!
强制退出。 - 保存并退出 :
:wq
或:x
。
1.2.4 常用命令
- 移动光标 :
h
左移,j
下移,k
上移,l
右移。w
向前移动一个单词,b
向后移动一个单词。
- 删除文本 :
x
删除光标处的字符。dd
删除整行。
- 复制和粘贴 :
yy
复制当前行。p
在光标后粘贴。
- 撤销操作 :
u
撤销上一步操作。
1.3 vi
的特点
- 轻量级,速度快,适合在资源有限的环境中使用。
- 无需鼠标,只需使用键盘操作,适合在终端和远程SSH环境下使用。
- 所有Unix和Linux系统中几乎都默认安装。
2. vim
编辑器
2.1 什么是 vim
vim
是 "Vi IMproved" 的缩写,即 vi
编辑器的增强版本。vim
在 vi
的基础上增加了许多功能,如语法高亮、代码折叠、多文件编辑、插件支持等,使其更适合编程和复杂文本处理。vim
也是在大多数Linux发行版中默认预装的编辑器之一。
2.2 vim
的基本用法
2.2.1 启动 vim
与 vi
类似,在终端中输入以下命令打开文件:
bash
vim filename
如果文件存在,vim
将打开文件进行编辑;如果文件不存在,vim
将创建新文件。
2.2.2 模式
vim
和 vi
拥有相同的三种基本模式(普通模式、插入模式、命令模式),但 vim
的每种模式都有更多的功能和更好的体验。例如,vim
提供了可视模式,用于高效选择文本块。
2.2.3 vim
的增强功能
- 语法高亮 :
vim
可以根据文件类型自动进行语法高亮,方便程序开发者编写和调试代码。 - 多文件编辑 :可以在同一窗口中打开多个文件,使用
:e filename
打开文件,使用:n
和:prev
在文件间切换。 - 分屏 :使用
:split
或:vsplit
进行水平或垂直分屏,方便同时查看和编辑多个文件。 - 代码折叠:支持折叠代码块,以减少视觉干扰,专注于当前的编辑区域。
- 撤销树 :相比
vi
仅支持一步撤销,vim
允许多步撤销,并且可以管理一个撤销树,进行更复杂的撤销和重做操作。 - 插件系统 :
vim
拥有强大的插件系统,可以安装各种插件来增强功能,比如代码自动补全、文件树、语法检查等。常用的插件管理器包括vim-plug
、Vundle
等。
2.2.4 vim
的基本操作
vim
继承了 vi
的所有命令,并进行了扩展。例如:
-
可视模式 :按
v
进入可视模式,可以选择文本块,再进行复制、删除等操作。 -
替换 :
:s/old/new/
替换当前行第一个匹配的字符串,:%s/old/new/g
替换整个文件中的所有匹配字符串。 -
搜索 :按
/
输入要查找的内容,按n
查找下一个匹配项,N
查找上一个匹配项。 -
配置 :通过
~/.vimrc
文件自定义配置,设置缩进、显示行号、语法高亮等。例如:vimset number " 显示行号 syntax on " 启用语法高亮 set tabstop=4 " 设置tab宽度为4
2.3 安装插件
vim
可以通过插件扩展功能,下面介绍简单的插件管理方式:
- vim-plug :一个流行的插件管理器,易于使用,安装新插件非常方便。安装
vim-plug
后,在~/.vimrc
中配置插件列表,然后执行:PlugInstall
即可安装所有插件。
3. vi
与 vim
的区别
功能 | vi |
vim |
---|---|---|
语法高亮 | 不支持 | 支持多种编程语言语法高亮 |
撤销操作 | 只支持单步撤销 | 支持多步撤销 |
多文件编辑 | 支持,但功能有限 | 完善的多文件编辑功能 |
插件支持 | 不支持 | 支持,可扩展性强 |
配置文件 | 少量配置 | 丰富的配置项,.vimrc 文件 |
可视模式 | 不支持 | 支持选择文本块 |
分屏功能 | 基本支持 | 支持水平和垂直分屏 |
总结
vi
是一个简单、轻量的文本编辑器,在所有Unix和Linux系统中几乎都有预装。适合基本的文本编辑和在资源有限的环境中使用。vim
是vi
的增强版,具有丰富的功能,如语法高亮、插件支持、多文件编辑、分屏等,适合程序开发和复杂文本处理。对于Linux用户,尤其是程序员来说,vim
是一个功能强大的工具。