Backup on save 必须与 Simple backup 或 With timestamp 任一模式同时启用才生成 .bak 文件;仅勾选 Backup on save 而未选择具体备份方式将不写入任何备份。

Backup on save 选项必须和备份模式同时启用才生效
勾选 Backup on save 却没生成 .bak 文件?大概率是因为你只开了开关,没选具体备份方式。Notepad++ 的备份机制是“双开关”设计:Enable backup 是总闸,但真正决定是否写文件、怎么命名、存哪的,是下方两个互斥单选框:Simple backup 和 With timestamp。
常见错误现象:界面看起来全勾了,可保存后原目录就是没 .bak。原因就是 Enable backup 下方没点中任一模式——它默认不选,点了才触发。
-
Simple backup:每次保存都覆盖同名.bak,省空间但无历史可查 -
With timestamp:生成带时间戳的独立文件(如config.json_20261026_191233.bak),安全但占磁盘 - 路径默认在原文件同目录;若想集中管理,需手动点右侧
Browse...指定统一目录(建议纯英文、无空格、非同步盘)
退出时备份(Backup on exit)对未命名文件完全无效
Backup on exit 看似能兜底,但它只对已有完整路径的文件起作用。新建标签页叫 new 1,哪怕你写了 500 行代码,只要没按 Ctrl+S 或另存为,这个选项就当它不存在。
更隐蔽的问题是:它静默失败。只读文件、路径不可写、磁盘满、权限不足——全部不报错、不弹窗、不记录日志,直接跳过。
- 备份文件默认存在 Notepad++ 安装目录下的
backup\子目录(如C:\Program Files\Notepad++\backup\) - Windows 系统盘下该路径常因 UAC 权限被拦截,建议改到
D:\npp-backup\这类本地非系统盘路径 - 不要指望它防崩溃:Notepad++ 被强制结束、蓝屏、断电时,根本来不及执行退出流程
会话快照(Session snapshot)不生成 .bak,但能恢复未命名文档
很多人误以为「启用会话快照」就会在项目目录里看到一堆 .bak,其实它压根不碰源文件。它干的事是把所有打开的标签页(包括 new 1)内容序列化成 session.xml 和若干 recovery_*.tmp,存在 %APPDATA%\Notepad++\backup\ 下。
关键配置有三个缺一不可:
- 勾选
Enable session snapshot and periodic backup - 勾选
Remember current session for next launch(否则下次启动不提示恢复) - 设置合理的间隔(最小 1 分钟;设太短如 30 秒,开 20+ 大文件时可能卡 UI)
注意:OneDrive、微云等同步工具会锁住 session.xml,导致写入失败且无提示——快照看似开着,实则形同虚设。
AutoSave 插件才是唯一能定时写回原文件的方案
如果你的目标是“编辑几秒后自动覆盖原文件”,Backup on save 和 Backup on exit 都做不到。必须装 AutoSave 插件,且配置要点很具体:
- 安装路径:
Plugins → Plugin Admin → 搜索 AutoSave → Install,重启后菜单才出现 -
Auto Save When推荐选Focus Lost(切出窗口即保存),比Periodically更及时、冲突少 -
Auto Save What务必只勾Current File Only,否则可能把空标签页乱写进默认路径 -
Save Untitled Files To若启用,必须填绝对路径(如C:\temp\npp-untitled\),且该目录要真实存在、有写权限
它没有撤销、不生成备份、不校验语法,一次失焦就可能把错误代码写进生产配置——别对关键文件开无确认自动保存。











