Linux vi/vim保存文件救命指南

基础保存操作

  1. 进入命令模式
    编辑文件后,按 Esc 键退出插入模式(确保左下角无 -- INSERT -- 提示)。
  2. 执行保存命令
    • 仅保存不退出:输入 :w 后按回车。
      • 成功提示:"filename" [已写入] 行数, 字符数
    • 保存并退出:输入 :wq:x 后按回车。
    • 强制保存(忽略警告):输入 :w!(适用于只读文件但用户有权限时)。

进阶保存场景

  1. 另存为新文件
    输入 :w 新文件名(如 :w backup.txt),原文件不受影响。
  2. 保存部分内容
    • 选中文本后,输入 :'<,'>w 文件名(可视模式下按 v 选择,再输入 自动生成范围)。
  3. 未修改却提示”已修改”时的保存
    若文件被外部修改,强制保存用 :w!(需谨慎)。

保存失败解决方案

问题现象 原因 解决方法
E212: Can't open file for writing 权限不足 sudo vi 文件:w !sudo tee %
E166: Can't open linked file 符号链接指向无效路径 检查路径或保存到新位置 :w 新路径
E382: Cannot write, 'readonly' option is set 文件只读 :w! 强制保存(需权限)

组合操作技巧

  • 保存并退出:wq 或快捷键 Shift + ZZ(无需回车)。
  • 不保存强制退出:q!(放弃所有修改)。
  • 编辑中保存:在插入模式按 Ctrl + O,再输入 :w,回车后继续编辑。

注意事项

  1. 权限管理
    • 修改系统文件前,建议用 sudo vi /path/file 避免权限错误。
  2. 恢复交换文件
    异常退出后重启 vi,按 R 恢复未保存内容(.swp 文件提示)。
  3. 路径规范
    保存路径含空格时,用引号包裹(如 :w 'new file.txt')。

引用说明基于 Vi IMproved (Vim) 9.0 官方文档及 Linux 核心工具实践指南,权威参考来源包括:

  • Vim 官方手册(:help w 命令)
  • Linux 基金会《命令行基础》文档
  • POSIX 标准对 vi 的规范(IEEE Std 1003.1)

掌握这些操作可确保编辑安全高效,建议在终端实操练习,熟悉模式切换与命令组合,提升 Linux 文本处理能力。

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

(0)
酷番叔酷番叔
上一篇 2025年7月25日 18:51
下一篇 2025年7月25日 19:10

相关推荐

  • Ubuntu升级后无法开机?速解

    使用 uname 命令(推荐)uname 是Linux核心工具,直接显示系统架构:uname -m输出示例:x86_64 → 64位Intel/AMD处理器aarch64 → 64位ARM处理器(如树莓派4)i686 或 i386 → 32位x86处理器原理:调用内核信息,100%准确且无需安装额外工具,通过……

    2025年7月30日
    3200
  • Linux下运行C程序的具体步骤和方法是什么?

    Linux作为广泛使用的操作系统,其下运行C程序是开发者的基础技能,整个过程涉及编写源代码、编译、链接和执行四个核心步骤,本文将详细介绍每一步的操作方法及注意事项,首先需要准备工作,即安装C编译器,Linux环境下最常用的编译器是GCC(GNU Compiler Collection),大多数发行版默认未安装……

    2025年8月24日
    3100
  • SUSE Linux系统如何安装MySQL数据库?

    在SUSE Linux系统中安装MySQL(以MySQL 8.0社区版为例),需通过官方仓库确保版本兼容性和安全性,以下是详细步骤:环境准备与系统检查确认系统版本SUSE Linux主要分为企业版(SLES)和开源版(openSUSE),本步骤以openSUSE Leap 15.3为例(SLES步骤类似),执行……

    2025年9月21日
    2100
  • Linux系统如何禁用独立显卡驱动?

    在Linux系统中,禁用显卡驱动的场景通常包括更换驱动类型(如从NVIDIA闭源驱动切换至开源驱动)、解决驱动冲突、使用核显或虚拟机等需求,不同显卡驱动(如NVIDIA、AMD、Intel)的禁用方法存在差异,需根据具体驱动类型采取对应操作,同时需注意配置文件的修改和系统更新,确保禁用后系统仍能正常运行,禁用不……

    2025年9月10日
    2200
  • Linux系统如何锁定用户账户以保障安全?

    在Linux系统中,锁定用户是一项常见的安全管理操作,通常用于临时或永久禁止用户访问系统,例如应对安全事件、员工离职、权限调整等场景,Linux提供了多种用户锁定方法,涵盖密码锁定、登录限制、SSH访问控制等多个维度,本文将详细介绍这些方法的具体操作、适用场景及注意事项,通过passwd命令锁定用户密码pass……

    2025年9月26日
    2000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信