在 vi/vim 中查看文件时删除全部内容,核心是先进入编辑模式,再通过快捷命令清空,以下是 3 种简单高效的方法(按操作便捷性排序):
方法 1:最简一键清空(推荐)
-
打开文件后,先按
Esc确保处于命令模式(底行无输入提示); -
输入以下命令并按回车: vim
:%d
命令解析:
::进入底行命令模式;%:代表 "整个文件的所有行"(等价于1,$,即从第 1 行到最后一行);d:delete,删除选中的内容。
方法 2:可视化全选删除(适合新手)
- 打开文件后按
Esc切命令模式; - 按
gg跳转到文件第一行; - 按
VG全选所有内容(V进入行可视化模式,G跳转到最后一行,自动选中全部); - 按
d键删除选中的内容。
方法 3:手动逐行删除(不推荐,仅了解)
- 按
gg跳转到第一行; - 连续按
dG(d+G):d是删除,G是到最后一行,即删除从当前行(第一行)到最后一行的所有内容。
关键补充:删除后保存 / 放弃修改
1. 确认删除并保存(清空文件)
删除内容后,输入 :wq 按回车(w= 保存,q= 退出),文件会被清空并保存。
2. 误删后放弃修改(恢复原内容)
若删错了,还没保存时,输入 :q! 按回车(q!= 强制退出不保存),文件会恢复到打开前的状态。
注意事项
-
若文件是只读权限 (如
ls -l显示-r--r--r--),删除后保存会报错,需先加写权限:bash
运行
# 退出vi,终端执行 chmod +w 文件名 # 重新打开vi操作 -
大文件(如几 G 的日志)用
:%d效率最高,可视化全选可能卡顿; -
操作前若需备份,可先执行
:w 备份文件名(如:w file.bak),再清空原文件。
总结:优先用 :%d 一键清空,新手可记 gg + VG + d,操作后记得按需求保存或放弃修改。