我正在使用 Mac OS X Yosemite,我希望能够使用以下命令从终端打开 Sublime Text 2:
sublime .
我在终端中输入了此内容如 Sublime Text 2 网站上所示:
ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/sublime
还有这个变体:
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime
在终端中,如果我输入:
echo $PATH
我得到:
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
我尝试编辑我的.bash_profile
,现在它是空白的
完成所有这些后,我尝试sublime .
并收到以下错误:
-bash:sublime:未找到命令
我对 Mac OS X 和终端配置完全陌生,我真的很难弄清楚为什么我无法让它工作,所以任何帮助都会很感激。
答案1
尝试运行ln -s
此处解释的反斜杠/转义版本的命令像这样:
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
正如该网站所解释的——我同意——Sublime ~/bin
Text 官方网站的建议似乎很奇怪,我以前从未遇到过针对本地二进制文件的类似建议。所以避免使用它。
但所有示例中奇怪的是sudo
未被使用。该/usr/local/bin
目录是根系统目录,通常除了 之外任何人都无法写入root
。因此,考虑到这一点,只需通过sudo
以下方式运行上述命令:
sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
当然,您现在必须输入您的 root/管理员密码。但一旦完成,符号链接就应该到位了。要确认它在那里,只需从终端运行以下命令:
ls -la /usr/local/bin/sublime
输出应为包含日期/时间的目录列表,如下所示:
lrwxr-xr-x 1 root wheel 27 Aug 21 2015 sublime -> /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl
答案2
这应该是一件非常简单的事情,使用内置open
命令——
open -a "Sublime Text 2"
您还可以sublime
为其创建命令别名。
alias sublime='open -a "Sublime Text 2"'
答案3
我已经这样做过很多次了,因此我建议:
~/.bashrc
为或~/.zshrc
(alias sublime="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
)添加别名- 将 RC 文件移动到 iCloud Drive,并将该文件符号链接回你的根目录
~
ln -s "/Users/username/Library/Mobile Documents/com~apple~CloudDocs/.zshrc" ~/.zshrc
如果你使用 zsh,你可以export icloud="/Users/username/Library/Mobile Documents/com~apple~CloudDocs"