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

相关推荐

  • Linux如何登录root账户?方法步骤及注意事项解析

    Linux系统中,root用户是拥有最高权限的超级管理员,负责系统核心配置、软件安装、用户管理等关键操作,由于root权限过高,直接登录存在安全风险,Linux系统通常默认禁用root直接登录,需通过特定方法切换或登录,以下是几种常见的root登录方式及相关注意事项,通过su命令切换到root用户(命令行界面……

    2025年8月25日
    1300
  • Linux内存缓存为何占用过高?

    Linux内存缓存是内核利用空闲内存缓存磁盘数据,旨在加速系统性能,这部分内存可被应用程序需要时快速回收,并非浪费,有效减少了磁盘I/O操作。

    2025年6月12日
    4200
  • Linux删除账户如何避免误删?

    核心命令:userdeluserdel 是Linux删除用户的专用命令,需root权限执行:sudo userdel [选项] 用户名常用选项:选项作用-r删除用户主目录及邮件文件-f强制删除(即使用户已登录)-Z同时清除SELinux用户映射详细操作步骤基本删除(保留主目录)sudo userdel user……

    2025年7月19日
    3400
  • linux如何对指定文件赋权

    使用 chmod 命令,chmod 755 /path/to/file,

    2025年8月10日
    1100
  • 30秒写出高效脚本?

    cron 任务调度(最常用)原理:通过守护进程crond周期性执行任务,适用场景:需要按固定周期(分钟/小时/天等)重复执行的任务,操作步骤:编辑用户级定时任务crontab -e # 编辑当前用户的任务在打开的文件中添加规则(每行一个任务):# 格式:分 时 日 月 周 <命令&gt……

    2025年6月24日
    3400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信