Sublime Text复制当前文件路径需先保存文件,再按Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(macOS)输入“Copy File Path”回车;未保存或临时视图将失败,路径不含引号,含空格需手动加引号后使用。

直接按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 Copy File Path 并回车——这是最稳、无需插件、全版本原生支持的方式,但前提是文件必须已保存。
为什么 Copy File Path 没反应?
不是命令坏了,是当前视图没“真实路径”:
- 窗口标题栏显示
untitled或状态栏左下角没路径 → 文件未保存,view.file_name()返回None,命令静默失败 - 当前是 Git diff 面板、REPL 输出、Snippet 预览页等插件生成的临时视图 → 即便内容像文件,也无磁盘路径
- 文件虽已保存,但路径含符号链接(如
/usr/local/bin/subl)→ 命令复制的是目标真实路径,不是链接本身,可能和你预期不符
怎么绑定快捷键让复制更快?
打开 Preferences → Key Bindings,在右侧用户配置中添加一行:
[ {"keys": ["ctrl+alt+shift+c"], "command": "copy_file_path"} ]
注意几个实际坑点:
-
command名必须是copy_file_path(全小写+下划线),拼成copy_path或CopyFilePath都无效 - Windows/Linux 用
ctrl+alt+shift+c比ctrl+alt+c更安全——后者常被中文输入法或系统快捷键劫持 - macOS 上
ctrl要换成super(即cmd),否则不触发 - 改完保存后,已有窗口不会自动生效,建议新建窗口测试
复制出来的路径粘贴到终端报错怎么办?
Sublime 复制的路径默认不带引号,一旦含空格或中文,shell 就会拆断。比如 /Users/me/My Project/file.txt 粘贴后变成两个参数:/Users/me/My 和 Project/file.txt。
解决方法只有两个:
- 手动加英文双引号包裹路径,再执行:
cat "/Users/me/My Project/file.txt" - 或者用
cd进入父目录后,用 Tab 补全文件名,避免手输空格
别指望 Sublime 自动加引号——它只管复制原始路径字符串,格式兼容性由你负责收尾。

















