Linux中如何启动vi编辑器?

vi是Linux系统中经典的文本编辑器,因其轻量、高效且预装在大多数发行版中,成为开发者和管理员常用的工具,启动vi的方式多样,可根据需求选择不同的启动参数,同时理解其模式切换逻辑是高效使用的基础。

linux如何启动vi

Linux中启动vi的详细方法

基础启动方式

vi的启动核心命令vi,后接可选参数或文件名,根据是否指定文件、定位位置或恢复会话,可分为以下几种常见场景:

直接启动vi(不指定文件)
在终端输入vi后回车,将打开一个空白缓冲区(未命名文件),此时可编辑内容,保存时需指定文件名。

vi

启动vi并打开/创建文件
若指定文件名,文件存在则打开,不存在则创建新文件,这是最常用的启动方式:

vi test.txt       # 打开或创建test.txt
vi /path/to/file  # 打开绝对路径下的文件

定位到文件的特定行
编辑大文件时,常需直接跳转到指定行,可通过+n参数实现(n为行号):

linux如何启动vi

vi +20 test.txt   # 打开test.txt并定位到第20行

定位到匹配关键词的行
若需快速找到包含特定关键词的位置,使用+/patternpattern为关键词):

vi +/error log.txt  # 打开log.txt并定位到第一个包含"error"的行

恢复异常退出的编辑会话
若vi因崩溃或强制退出未保存,会生成.swp备份文件,使用-r参数可恢复未保存的修改:

vi -r test.txt    # 恢复test.txt的未保存内容

启动方式速查表

为方便快速参考,以下是常用启动命令的总结:

命令格式 功能描述 示例场景
vi 启动空白编辑器 临时编辑、快速记录
vi filename 打开/创建文件并编辑 日常文本编辑、代码修改
vi +n filename 打开文件并定位到第n行 定位到日志文件的错误行
vi +/pattern filename 打开文件并定位到匹配关键词的行 搜索代码中的特定函数
vi -r filename 恢复异常退出的未保存内容 崩溃后恢复编辑内容

启动后的核心模式与切换

vi的核心优势在于其模式化编辑,启动后默认进入普通模式(Normal Mode),此时无法直接输入文字,需切换模式才能编辑:

linux如何启动vi

  • 普通模式:默认模式,用于导航(如hjkl移动光标)、复制(yy)、粘贴(p)、删除(dd)等操作。
  • 插入模式:用于输入文字,从普通模式进入:
    • i:在当前光标前插入
    • a:在当前光标后插入
    • o:在下一行新开一行插入
    • O:在上一行新开一行插入
  • 命令行模式:用于保存、退出等操作,从普通模式按进入,输入命令后回车执行。

示例流程

vi test.txt  # 启动并打开test.txt(普通模式)
i            # 按`i`进入插入模式,输入文字
Hello Linux! # 文字输入完成
Esc          # 按`Esc`返回普通模式
:wq          # 输入`:wq`保存并退出(`:w`保存,`:q`退出)

常见问题处理

  • 文件只读提示:若文件无写入权限,启动后会显示[readonly],此时需用强制保存:w!(需root权限)。
  • 无法输入文字:确认是否处于普通模式,按ia切换到插入模式。

相关问答FAQs

Q1:vi启动后按键盘字母没有反应,无法输入文字,怎么回事?
A:vi启动后默认处于普通模式(Normal Mode),此模式下键盘输入会被视为命令而非文字,需先切换到插入模式才能输入:按i键在当前光标前插入,a键在当前光标后插入,o键在下一行新开一行插入,按Esc键可从插入模式返回普通模式。

Q2:如何在不退出vi的情况下保存文件并继续编辑?
A:在普通模式下,按进入命令行模式,输入w后回车(w),此时文件已保存但vi不退出,可继续编辑,若需保存并退出,输入wq后回车;若不想保存直接退出,输入q!后回车(强制退出,不保存修改)。

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

(0)
酷番叔酷番叔
上一篇 2025年9月18日 04:21
下一篇 2025年9月18日 04:42

相关推荐

  • linux下qt如何打开文件夹

    Linux 下,Qt 可以使用 QFileDialog 类中的 getOpenFileName 或 getExistingDirectory 方法来打开文件夹

    2025年8月14日
    2700
  • Linux环境下如何运行gcc编译C语言代码并生成可执行文件?

    在Linux系统中,GCC(GNU Compiler Collection)是广泛使用的编译器套件,支持C、C++、Objective-C等多种编程语言,要在Linux下运行GCC,需经历安装、编写代码、编译、链接及运行等步骤,以下是详细操作指南,安装GCC不同Linux发行版的包管理工具不同,安装命令有所差异……

    2025年8月30日
    3900
  • 如何查看linux的ftp

    Linux中,可使用命令ftp [服务器地址]进入FTP交互模式查看;

    2025年8月15日
    4200
  • Linux系统重置root密码的方法及费用是多少?

    在Linux系统中,root用户是拥有最高权限的管理员账户,若忘记root密码,会导致无法进行系统管理操作,重置root密码是常见的系统恢复操作,尤其适用于物理服务器或虚拟机无法通过常规方式登录的场景,需要注意的是,重置密码操作需谨慎执行,避免因误操作导致系统数据丢失或服务异常,以下是详细的操作步骤和注意事项……

    2025年9月21日
    1900
  • Linux系统中如何设置环境变量PATH?

    在Linux系统中,PATH环境变量是一个重要的配置项,它定义了系统在执行命令时会搜索哪些目录的可执行文件,当用户在终端输入一个命令(如ls、cd等)时,系统会按照PATH中指定的目录顺序依次查找对应的可执行文件,如果找到则执行,否则提示“command not found”,正确设置PATH环境变量能够让系统……

    2025年9月25日
    2500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信