vi/vim 中查看文件时删除全部内容

vi/vim 中查看文件时删除全部内容,核心是先进入编辑模式,再通过快捷命令清空,以下是 3 种简单高效的方法(按操作便捷性排序):

方法 1:最简一键清空(推荐)

  1. 打开文件后,先按 Esc 确保处于命令模式(底行无输入提示);

  2. 输入以下命令并按回车: vim

    复制代码
    :%d
命令解析:
  • ::进入底行命令模式;
  • %:代表 "整个文件的所有行"(等价于 1,$,即从第 1 行到最后一行);
  • d:delete,删除选中的内容。

方法 2:可视化全选删除(适合新手)

  1. 打开文件后按 Esc 切命令模式;
  2. gg 跳转到文件第一行;
  3. VG 全选所有内容(V 进入行可视化模式,G 跳转到最后一行,自动选中全部);
  4. d 键删除选中的内容。

方法 3:手动逐行删除(不推荐,仅了解)

  1. gg 跳转到第一行;
  2. 连续按 dGd+G):d 是删除,G 是到最后一行,即删除从当前行(第一行)到最后一行的所有内容。

关键补充:删除后保存 / 放弃修改

1. 确认删除并保存(清空文件)

删除内容后,输入 :wq 按回车(w= 保存,q= 退出),文件会被清空并保存。

2. 误删后放弃修改(恢复原内容)

若删错了,还没保存时,输入 :q! 按回车(q!= 强制退出不保存),文件会恢复到打开前的状态。

注意事项

  1. 若文件是只读权限 (如 ls -l 显示 -r--r--r--),删除后保存会报错,需先加写权限:

    bash

    运行

    复制代码
    # 退出vi,终端执行
    chmod +w 文件名
    # 重新打开vi操作
  2. 大文件(如几 G 的日志)用 :%d 效率最高,可视化全选可能卡顿;

  3. 操作前若需备份,可先执行 :w 备份文件名(如 :w file.bak),再清空原文件。

总结:优先用 :%d 一键清空,新手可记 gg + VG + d,操作后记得按需求保存或放弃修改。

相关推荐
老当益壮梁奶奶3 分钟前
Linux软件编程学习笔记(十一):深入浅出 TCP 协议与 Socket 编程实践
linux·c语言·笔记·学习·tcp/ip
speop15 分钟前
hell-gpu| TASK01-2
linux·运维·算法
byte轻骑兵28 分钟前
【BlueZ 】用户态入口:main.c 核心函数与程序启动流程
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙
Tisfy1 小时前
LeetCode 2058.找出临界点之间的最小和最大距离:遍历+遇到极值则更新(这种题谁空间复杂度不是O(1)啊)
linux·数据库·leetcode·链表·题解·模拟·遍历
liulilittle1 小时前
REALITY 代理隧道的有效检测方法: 被动、主动与确定性三层实证研究
linux·服务器·网络·网络协议·安全·网络安全·通信
邪修king2 小时前
Re:Linux 系统篇(十五):进程篇(四):进程切换深度解析 —— CPU 寄存器、进程上下文与切换全流程万字详解
linux·运维·服务器
高亦真2 小时前
今天是学习嵌入式的第33天
linux·学习·算法
cuijiecheng20182 小时前
Rocky Linux 安装 libltc、ltc-tools 和 ltcdump
linux
BlueAsia_Lab2 小时前
BQB 认证执行标准是什么?核心条款通俗解读
linux·运维·网络
小小、码农2 小时前
【网络】套接字(Socket)编程——TCP版
linux·服务器·网络·c++·网络协议·tcp/ip