Sublime崩溃后未保存文件大概率能找回,需立即行动:先重启看恢复弹窗;若无弹窗但有Untitled标签页则立刻保存;否则手动解析Session.sublime_session或Recovery目录中的临时文件。

Sublime 崩溃后未保存的文件大概率能找回,但必须立刻行动——等你关机、重启多次、或清空配置目录,就真没了。
崩溃后第一件事:别乱点,先重启看恢复弹窗
Sublime 在异常退出(比如卡死强制杀进程)后,只要 hot_exit 和 remember_open_files 是 true(默认开启),下次启动时大概率会弹出“恢复上一个会话”提示。这不是可选项,是它自己在后台已加载好内容,只差你点一下“恢复”。
- 如果弹窗出现,直接点“恢复”,然后马上执行
File → Save As保存所有Untitled标签页 - 没弹窗但打开后有多个灰色标题的
Untitled标签页,说明内容已在内存里,立刻保存 - 若只有部分文件恢复,反复按
Ctrl+Shift+T(Windows/Linux)或Cmd+Shift+T(macOS),它会逐个还原最近关闭的标签页,不是只限一次
没弹窗也没 Untitled 标签?去 Session.sublime_session 里手动捞
这个文件是 Sublime 的会话快照,JSON 格式,里面 buffers 字段存着未保存文件的完整文本内容("contents": "..." 或 "input": "...")。它比 Recovery 目录更可靠,因为崩溃时 Session 文件往往已写入完成。
- 务必先关闭 Sublime Text,避免新操作覆盖旧缓存
- 路径要对:
C:\Users\你的用户名\AppData\Roaming\Sublime Text 3\Local\Session.sublime_session(Win)、~/Library/Application Support/Sublime Text 3/Local/Session.sublime_session(macOS)、~/.config/sublime-text-3/Local/Session.sublime_session(Linux) - 用 VS Code 或记事本打开,搜索你记得的函数名、变量名或注释关键词,快速定位到对应
buffers条目 - 复制
"contents"双引号内的内容,注意\n是换行,\"是引号转义,粘贴后基本就是原样代码
Session 文件打不开或搜不到?查 Recovery 目录里的原始临时文件
某些崩溃场景下(比如断电、杀进程太猛),Sublime 会把未保存内容单独 dump 到 Recovery 目录,文件名通常是 recovery-xxx,无扩展名或带 .tmp,内容是纯文本,不用解析 JSON。
- 路径和 Session 同级,进
Local/Recovery/子目录即可 - 文件可能很多,优先找修改时间最接近崩溃时刻的(Windows 资源管理器按“修改日期”排序,macOS 用
ls -lt) - 直接用 Sublime 自身打开这些文件,如果内容可读,立刻另存为
- 别指望文件名能告诉你属于哪个项目——它只按时间戳和随机字符串命名,靠内容关键词确认
为什么有时恢复失败?三个最容易被忽略的硬伤
不是 Sublime 不给力,而是用户操作或配置踩了关键坑:
-
hot_exit被设为 false:这时关闭 Sublime 就等于放弃所有未保存内容,下次启动不会恢复任何东西 - 反复重启又关闭:每次启动都会尝试写新 Session,旧缓存可能被覆盖,尤其在没看到弹窗就手动关掉的情况下
- 装了不兼容插件(比如老版 AutoSave 或自定义 .py 插件有语法错误):它会让
plugin_host崩溃,连带干扰会话写入流程,这种情况下 Session 文件可能为空或损坏
真正难恢复的,从来不是崩溃本身,而是你在崩溃后还顺手清空了 Local 目录,或者等了一天再想起来找——缓存文件没有长期保鲜机制,它只等你伸手去拿。

















