Ctrl+Shift+F(macOS用Cmd+Shift+F)是唯一跨文件批量替换入口;必须先通过File→Open Folder…加载项目,面板右下角显示路径才生效,Ctrl+H仅作用于当前文件。

Ctrl+Shift+F 是唯一能跨文件批量替换的入口
按 Ctrl+Shift+F(macOS 用 Cmd+Shift+F)打开「Find in Files」面板,Ctrl+H 只改当前文件,点再多遍 Replace All 也动不了其他文件。面板右下角必须看到路径(如 ~/my-project/),否则说明没加载项目——先执行 File → Open Folder… 选中根目录,状态栏出现路径才算就位。
URL 域名替换得覆盖三类写法,不能只搜 https?://
Sublime 不解析 HTML/CSS/JS 语法,只做纯文本匹配。实际项目里 URL 可能是:
https://old.example.com/static/logo.png-
//old.example.com/api/v1(协议相对) -
url("old.example.com/img")或@import "old.example.com/style.css"(无协议、带引号或括号)
推荐正则查找内容:(https?://|//|(?,启用 <code>.* 模式后替换为 new.example.com。注意点号要转义,old.example.com 不加 . 会匹配 oldXexampleXcom。
路径分隔符 替换为 / 必须双重转义
Windows 路径里的反斜杠在正则中是转义符,直接写 会报错或无效。查找框必须填 \(两个反斜杠),替换框填 /,并确保 .* 按钮已激活。常见错误是只写一个 ,结果什么也不匹配;或忘了点 .*,把 \ 当字面量去搜。
UNC 路径(如 \servershare)开头两个 也会被换,但多数场景影响不大;若需保留,可用更严正则:(?,不过实际建议先全局替换,再手动修一两处边界更省事。
替换完不保存 = 白干,Ctrl+K → Ctrl+B 是最后一步
点完 Replace All 后,所有被改的文件标签页右上角会出现星号 *,这是 Sublime 在提醒:“这些只是内存里的脏数据”。切到终端、Alt+Tab 切窗口、甚至关掉某个未保存标签页,改动都会丢。必须手动执行 Ctrl+K 然后 Ctrl+B(macOS 是 Cmd+K → Cmd+B)保存全部,否则 Git 提交时根本看不到变更。
容易被忽略的是:某些大文件(>10MB)或非 UTF-8 编码(如 GBK)文件默认不参与替换,右下角状态栏看编码是否为 UTF-8;只读文件(右下角标 RO)也不会被改,得先解除只读。

















