文章目录
[隐藏]
使用mac
系统自带的open
命令或者软件自带命令行工具subl
,都可以通过mac
终端打开sublime
,我个人推荐第二种
1、系统自带的open命令
open
命令可以从shell
打开文件,-a
选项指定特定的应用
1 |
open -a /Applications/Sublime\ Text.app test.txt |
这样操作比较繁琐,可以通过alias
命令设置别名为sublime
1 2 |
sublime='open -a /Applications/Sublime\ Text.app' sublime test.txt |
alias
命令的作用时间只能维持到 shell
会话结束,为了保证下次打开shell
的时候上述别名依然有效,可以将alias
语句写入~/.bash_profile
,再通过source ~/.bash_profile
激活即可。
参考:profile、bash_profile、bashrc文件的作用与区别 – IT笔录
2、Sublime提供的命令行工具subl
Sublime
自带命令行工具路径为/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl
通过ln
命令为上述subl
工具创建一个快捷方式,并将此快捷方式放到/usr/local/bin
路径下,此路径是包含在$PATH
中
1 2 3 4 5 6 |
$ sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl $ ls -l /usr/local/bin/subl //查看软链接状态 $ lrwxr-xr-x 1 root admin 68 5 16 21:20 subl -> /Applications/Sublime Text.app/Contents/SharedSupport/bin/subl $ subl test.txt |
PATH
:决定了shell
将到哪些目录中寻找命令或程序,PATH
的值是一系列目录,当您运行一个程序时,Linux/Mac
在这些目录下进行搜寻编译链接。通过echo
可以看出/usr/local/bin
是$PATH
的默认路径。
1 2 |
$ echo $PATH /Users/mcj/opt/anaconda3/bin:/Users/mcj/opt/anaconda3/condabin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin |
建立软链接为什么使用/usr/local/bin,不使用/usr/bin?
/usr/bin
是一个“神圣的”的地方,通常用来存放由包管理系统「package management systems」
维护的静态二进制文件,subl
显然不在此列。- 相较于其它基础的
BSD binaries
,例如find
,man
,make
,subl
显然还不够稳定。如果后续升级修改了Sublime
的名字或路径,或者删除了此应用,你必须手动修改/删除它的快捷方式。
-bash: subl: command not found
在使用过程中曾出现了上述问题,经过排查确认是建立软连接的时候,对subl
的绝对路径加了如下双引号导致的
1 |
sudo ln -s “/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl” /usr/local/bin/subl |
解决办法:去掉绝对路径外的双引号(""
)
本文最后更新于2023年1月31日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!