Linux下vi编辑器如何进行修改?

在Linux系统中,vi(或其增强版vim)是最常用的文本编辑器之一,掌握其修改操作是Linux用户的基本技能,本文将详细介绍vi编辑器中修改文本的具体方法,包括模式切换、基本编辑、文件保存等核心操作,帮助用户高效完成文本修改任务。

vi linux 如何改

vi编辑器的启动与模式基础

vi编辑器有三种核心工作模式:命令模式(默认进入模式)、插入模式(用于编辑文本)和末行模式(用于保存/退出及高级操作),首次打开文件时,vi会自动进入命令模式,此时无法直接输入文字,需通过特定命令切换到插入模式才能修改文本。

启动vi的命令格式为:vi [文件名],若文件不存在则会创建新文件。vi test.txt会打开或创建test.txt文件,并进入命令模式。

修改文本的核心操作流程

从命令模式进入插入模式

在命令模式下,需先切换到插入模式才能输入或修改文本,常用进入插入模式的命令如下:

  • i:在光标当前位置插入文本,光标后的字符后移。
  • a:在光标当前位置插入文本,光标后的字符前移。
  • o:在光标所在行下方插入新行,并进入插入模式。
  • O:在光标所在行上方插入新行,并进入插入模式。
  • I:在光标所在行的行首插入文本(忽略行首缩进)。
  • A:在光标所在行的行尾插入文本。

打开文件后按i,即可开始输入或修改文本,此时vi左下角会显示-- INSERT --,提示当前处于插入模式。

vi linux 如何改

插入模式下的编辑操作

进入插入模式后,可直接进行文本输入、删除、修改等操作,类似Windows记事本:

  • 输入字符:直接键盘输入即可,支持中文(需系统配置中文环境)。
  • 删除字符Backspace删除光标前字符,Delete(或Ctrl+H)删除光标后字符。
  • 换行Enter键在光标处换行,或创建新段落。
  • 退出插入模式:按Esc键返回命令模式,此时左下角的-- INSERT --消失。

命令模式下的高级修改操作

返回命令模式后,可通过组合命令实现高效编辑:

  • 光标移动
    • h(左)、j(下)、k(上)、l(右):逐字符移动光标。
    • w(后移单词)、b(前移单词)、e(移至单词尾):按单词移动。
    • gg(跳至首行)、G(跳至末行)、nG(跳至第n行,如5G跳至第5行)。
  • 文本删除
    • x:删除光标所在字符。
    • dd:删除整行(3dd删除从光标开始的3行)。
    • dw:删除一个单词(3dw删除3个单词)。
    • d$:删除光标至行尾内容;d^删除光标至行首内容(不含首字符)。
  • 文本复制与粘贴
    • yy:复制当前行(5yy复制5行)。
    • p:在光标后粘贴复制的内容;P在光标前粘贴。
  • 文本替换
    • r + 字符:替换光标所在字符为指定字符(如rA将光标字符替换为A)。
    • R:进入替换模式,连续替换光标后的字符(按Esc退出)。
  • 撤销与重做
    • u:撤销上一步操作(3u撤销3步)。
    • Ctrl+R:重做被撤销的操作。

末行模式下的保存与退出

完成修改后,需通过末行模式保存文件或退出,在命令模式下按(冒号)进入末行模式,底部会出现命令行提示符。

  • w:保存文件(不退出)。
  • q:退出文件(未修改时直接退出)。
  • wq:保存并退出(最常用)。
  • q!:强制退出(不保存修改,适用于误操作需放弃更改时)。
  • wq!:强制保存并退出(需文件写入权限)。

常用修改命令速查表

为方便使用,以下为vi编辑器常用修改命令的总结:

vi linux 如何改

功能分类 命令/操作 说明
模式切换 i/a/o 进入插入模式(具体见上文)
Esc 返回命令模式
光标移动 hjkl 左/下/上/右移动
gg/G 跳至首行/末行
文本删除 x/dd/dw 删除字符/整行/单词
文本复制 yy 复制当前行
粘贴 p/P 光标后/前粘贴
撤销 u 撤销操作
保存退出 wq 保存并退出
q! 强制退出(不保存)

相关问答FAQs

Q1:在vi中误删了大段文本,如何快速恢复?
A1:若未保存文件,可通过撤销操作恢复:在命令模式下按u撤销最后一次删除操作,多次按u可连续撤销多步;若已保存,则需结合u(撤销)和Ctrl+R(重做)操作,或从备份文件恢复(若有)。

Q2:修改文件时提示“readonly”(只读),无法保存怎么办?
A2:这通常是因为文件权限不足(如系统文件)或文件被其他程序占用,解决方法:

  1. 若文件权限不足,可通过sudo vi 文件名以管理员身份打开,或修改文件权限(chmod 644 文件名);
  2. 若文件被占用,需先关闭占用该文件的程序,或强制保存(wq!,需有文件所有者权限)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/34564.html

(0)
酷番叔酷番叔
上一篇 2025年10月2日 17:46
下一篇 2025年10月2日 18:00

相关推荐

  • Kafka目录找不到?正确位置在哪

    在Linux系统中启动消息队列(MQ)服务是部署分布式应用的关键步骤,下面以两种主流MQ(RabbitMQ和Apache Kafka)为例,详细说明启动流程,确保操作安全可靠,内容严格遵循官方文档,注重可操作性和安全性,启动前的准备工作环境要求系统:Ubuntu/CentOS 7+(本文以Ubuntu 22.0……

    2025年6月23日
    11100
  • 如何在Ubuntu/Debian安装客户端?

    RDP协议(微软原生方案)原理:使用Windows内置的远程桌面协议(Remote Desktop Protocol),性能高效且加密传输,Windows端设置启用远程桌面:Win + R 输入 sysdm.cpl → 选择“远程”选项卡勾选“允许远程连接到此计算机”点击“选择用户”添加有密码的账户(必需设置登……

    2025年7月9日
    10900
  • Linux系统如何用U盘启动?操作步骤有哪些?

    在Linux系统中通过U盘启动是一种常见的系统安装、数据恢复或测试方式,尤其适合没有光驱或需要快速部署的场景,整个过程需要准备合适的工具、正确制作启动盘,并在BIOS/UEFI中设置启动顺序,以下是详细步骤和注意事项,帮助顺利完成U盘启动Linux,准备工作在开始制作启动盘前,需确保以下准备工作到位:U盘选择……

    2025年8月30日
    7800
  • Arch Linux如何打开终端?

    在Arch Linux系统中,终端(Terminal)是与系统交互的核心工具,无论是命令操作、软件安装还是系统管理,都离不开终端的使用,掌握多种打开终端的方法,能根据不同场景灵活提升操作效率,以下是Arch Linux中打开终端的详细方法,涵盖图形界面、命令行及快捷操作等多种途径,通过图形界面应用程序菜单打开如……

    2025年9月23日
    7100
  • linux如何打开一个端口映射

    在Linux系统中,端口映射(通常指端口转发)是将网络流量从一个IP地址和端口转发到另一个IP地址和端口的过程,常用于内网服务暴露到公网、容器端口映射等场景,实现端口映射的主要工具包括iptables(传统Linux防火墙)和firewalld(CentOS 7+、RHEL 7+等系统默认防火墙),下面分别介绍……

    2025年10月3日
    5600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信