You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用Vim所有备份/交换文件?解决设置后仍生成文件的问题

彻底让VIM/GVIM纯内存编辑,不生成任何临时/备份文件

我明白你已经试了不少常规设置但还是踩坑了——这种情况大概率是有些隐藏的全局配置、插件冲突,或者你漏了几个关键选项。咱们一步步来解决,确保彻底杜绝所有临时文件:

第一步:把所有相关选项拉满关闭

把以下配置一次性加到你的~/.vimrc(GVIM还要同步加到~/.gvimrc)里,覆盖所有可能的默认设置:

" 核心:关闭所有备份、交换、临时文件功能
set nobackup          " 禁止生成常规备份文件(如 filename~)
set nowritebackup     " 写入文件时不创建临时备份(避免中间态文件)
set noswapfile        " 彻底关闭交换文件(如 .filename.swp)
set updatecount=0     " 禁止VIM自动定期保存交换文件
set backupskip=*      " 强制所有文件跳过备份逻辑
set noundofile        " 关闭持久化撤销文件(如 .filename.un~,默认关闭但以防万一)
set directory=/dev/null " 强制交换文件目录指向空设备,即使有其他设置试图创建也会失败
set backupdir=/dev/null " 同理,备份目录指向空设备,杜绝备份文件生成

第二步:排查配置加载顺序冲突

有时候系统级的全局配置(比如/etc/vim/vimrc或/usr/share/vim/vimXX/vimrc)会在你的用户配置之后加载,覆盖你的设置。你可以在VIM里输入:scriptnames查看所有加载的配置文件顺序——如果你的~/.vimrc不是最后一个加载的,要么调整系统配置,要么在你的vimrc末尾重复关键设置(比如再写一遍set nobackup nowritebackup noswapfile)强制覆盖。

第三步:排除插件干扰

某些插件可能会偷偷开启备份或交换功能。你可以用vim -u NONE启动一个纯净版VIM(不加载任何配置和插件),然后手动输入上面的配置命令,再编辑文件保存退出。如果这时候没有生成任何临时文件,说明你的插件里有“内鬼”——可以逐个禁用插件排查,找到罪魁祸首。

第四步:验证最终效果

启动VIM/GVIM,新建一个文件输入内容,:w保存后退出,然后用ls -la查看当前目录,确认没有filename~、.filename.swp、.filename.un~这类文件。如果还有残留,输入:set all查看当前所有设置,搜索backup、swap、writebackup相关选项,看是不是被意外设为yes,再针对性修正。

内容的提问来源于stack exchange,提问作者Cubi73

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:45:51