使用 Vi 编辑器创建和编辑文件

LinuxLinuxBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Vi 文本编辑器是 Linux 操作系统中用于编辑文件的强大且广泛使用的工具。在本教程中,我们将指导你完成保存更改并退出 Vi 编辑器的过程,让你掌握有效管理文件和工作流程的基本技能。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux(("Linux")) -.-> linux/VersionControlandTextEditorsGroup(["Version Control and Text Editors"]) linux/UserandGroupManagementGroup -.-> linux/set("Shell Setting") linux/VersionControlandTextEditorsGroup -.-> linux/vim("Text Editing") linux/VersionControlandTextEditorsGroup -.-> linux/vimdiff("File Difference Viewing") linux/VersionControlandTextEditorsGroup -.-> linux/nano("Simple Text Editing") linux/VersionControlandTextEditorsGroup -.-> linux/gedit("Graphical Text Editing") subgraph Lab Skills linux/set -.-> lab-392949{{"使用 Vi 编辑器创建和编辑文件"}} linux/vim -.-> lab-392949{{"使用 Vi 编辑器创建和编辑文件"}} linux/vimdiff -.-> lab-392949{{"使用 Vi 编辑器创建和编辑文件"}} linux/nano -.-> lab-392949{{"使用 Vi 编辑器创建和编辑文件"}} linux/gedit -.-> lab-392949{{"使用 Vi 编辑器创建和编辑文件"}} end

Vi 编辑器简介

什么是 Vi 编辑器?

Vi(可视化)是一款功能强大的基于屏幕的文本编辑器,广泛应用于 Linux 和类 Unix 操作系统。作为一款命令行文本编辑器,Vi 为开发者、系统管理员和高级用户提供了高效的文本处理能力。它预装在大多数 Linux 发行版中,是文本编辑的通用工具。

Vi 的关键特性

Vi 编辑器具有一些使其区别于其他文本编辑器的独特功能:

特性 描述
模式编辑 在不同模式下操作,具有不同的功能
轻量级 资源消耗极少
无处不在 几乎在所有类 Unix 系统上都可用
键盘驱动 无需鼠标交互即可高效编辑

Vi 编辑器工作流程

graph TD A[打开终端] --> B[启动 Vi] B --> C{选择模式} C -->|普通模式| D[浏览文本] C -->|插入模式| E[编辑文本] C -->|命令模式| F[执行命令]

Vi 基本用法示例

以下是在 Ubuntu 22.04 上使用 Vi 创建和编辑文本文件的简单示例:

## 创建一个新文件
vi sample.txt

## Vi 默认进入普通模式
## 按 'i' 切换到插入模式
## 输入你的文本内容

## 按 'Esc' 返回普通模式
## 输入 ':wq' 保存并退出

本介绍提供了对 Vi 文本编辑器、其核心原理以及在 Linux 命令行环境中的基本用法的基础理解。

Vi 模式与命令

Vi 编辑器模式

Vi 通过不同的模式进行操作,每种模式在文本编辑中都有特定的用途:

模式 主要功能 关键特性
普通模式 导航与命令执行 默认模式,不可插入文本
插入模式 文本输入 活跃的文本编辑状态
命令模式 高级操作 文件保存、搜索等

模式转换命令

graph TD A[普通模式] -->|i| B[插入模式] A -->|:| C[命令模式] B -->|Esc| A C -->|Esc| A

普通模式导航命令

普通模式下的关键导航命令:

  • h:向左移动
  • j:向下移动
  • k:向上移动
  • l:向右移动
  • 0:移动到行首
  • $:移动到行尾
  • gg:跳转到文档开头
  • G:跳转到文档末尾

插入模式技巧

## 进入插入模式
vi sample.txt
i   ## 开始插入文本
Esc ## 返回普通模式

## 其他插入命令
a ## 在光标后插入
o ## 在当前行下方插入新行
O ## 在当前行上方插入新行

命令模式操作

## 常见命令模式操作
:w            ## 保存文件
:q            ## 退出编辑器
:wq           ## 保存并退出
:q!           ## 不保存退出
/text         ## 搜索文本
:%s/old/new/g ## 全局文本替换

本节全面介绍了 Vi 的核心模式以及在 Linux 环境中进行有效文本编辑的基本命令。

Vi 高级操作

文本处理技巧

高级 Vi 提供了超越基本操作的强大文本编辑功能:

操作 命令 描述
复制行 yy 复制整行
剪切行 dd 删除并复制行
粘贴 p 粘贴复制的内容
撤销 u 撤销上一个操作
重做 Ctrl + r 恢复已撤销的操作

多文件处理

graph TD A[打开多个文件] --> B[分割窗口] B --> C[在文件间导航] C --> D[同时编辑]

高级编辑命令

## 打开多个文件
vi -o file1.txt file2.txt

## 水平分割屏幕
:split filename

## 垂直分割屏幕
:vsplit filename

## 在窗口间切换
Ctrl + w + (方向键)

Vi 配置与定制

## 创建 Vi 配置文件
vi ~/.vimrc

## 示例配置
set number     ## 显示行号
syntax on      ## 启用语法高亮
set autoindent ## 自动缩进新行
set tabstop=4  ## 设置制表符宽度

文本替换与搜索

## 全局文本替换
:%s/旧文本/新文本/g

## 区分大小写搜索
/SearchTerm

## 不区分大小写搜索
/SearchTerm\c

## 替换并确认
:%s/旧文本/新文本/gc

本节探讨 Vi 的高级操作,展示在 Linux 环境中复杂的文本编辑技巧。

总结

在本教程结束时,你将扎实掌握如何在 Linux 中保存工作并退出 Vi 文本编辑器。你将学习到必要的命令和技巧,以便将 Vi 编辑器无缝集成到日常任务中,使你在 Linux 环境中更高效地工作。