Sublime Text保存失败主因是父目录无写权限或atomic_save/rename被拦截;需同时检查文件及父目录权限、关闭“锁定”/“只读”、设encoding为UTF-8、禁用atomic_save临时验证,避免sudo运行。
Sublime Text 项目无法保存,90% 是文件或父目录权限不足,不是编辑器坏了,也不是插件冲突——改权限比重装、换编辑器、禁用杀软快得多。
为什么改了文件权限还是保存失败?
Sublime Text 保存操作本质是「删除旧文件 + 写入新文件」,所以仅给文件加
权限远远不够,父目录必须允许你创建和删除文件:
Linux/macOS:运行
,若输出为
(第三段无
),说明目录不可写;需执行
Windows:右键目标文件夹 → 属性 → 安全 → 编辑 → 找到你的用户名 → 勾选“修改” → 点“应用”,再勾选“将更改应用于此文件夹、子文件夹和文件”
别只看文件属性:macOS 上右键 → 显示简介 → 拉到底部关掉“锁定”;Windows 上右键文件 → 属性 → 取消勾选“只读”
atomic_save 和 encoding 会静默破坏保存
这两个设置不报错,但会让你反复按
却毫无反应,磁盘时间戳也不变:
仿Sublime和notepad++编辑器效果
仿Sublime和notepad++编辑器效果
下载
默认为
:Sublime 先写
,再
。OneDrive 同步中、NAS、WSL2 的
路径常拦截
,导致静默失败
不匹配:比如文件实际是
,但 Sublime 以
(无 BOM)读取并保存,部分 Windows 应用会触发系统级写保护
临时验证:在控制台执行
,若返回
或
,立刻菜单 →
调试时可设
,但长期关闭有数据丢失风险
别用 sudo subl 或“以管理员身份运行”长期编辑
这看似能绕过报错,实则埋下严重隐患:
Package Control 缓存(如
)被
写入,下次普通用户启动直接加载失败
保存的
文件属主变成
,后续
或
因权限不一致而失败
macOS Catalina+ 会直接拦截 GUI 程序的
启动,报
安全替代方案:在 Sublime 中按
(macOS)或
(Win/Linux)另存为
,再终端执行
真正容易被忽略的是:父目录的写权限和
的 rename 行为——它们不会弹窗报错,也不会出现在控制台日志里,只会让你觉得“点了保存,但什么都没发生”。
wls -ld /etc/nginx/dr-xr-xr-xwsudo chmod u+w /etc/nginx/Ctrl+Satomic_savetruexxx.tmprename/mnt/c/renameencodingUTF-8 with BOMUTF-8view.encoding()Western (Windows 1252)undefinedFile → Save with Encoding → UTF-8"atomic_save": false~/.config/sublime-text-3/Cache/root/etc/hostsrootgit commitnginx -tsudoLSOpenURLsWithRole() failedCmd+Shift+SCtrl+Shift+S~/Desktop/config.newsudo cp ~/Desktop/config.new /etc/myapp.confatomic_save