41

我是 Mac 新手(Mountain Lion)并尝试为终端设置“subl”命令,如下所述:

第一个任务是创建一个到 subl 的符号链接。假设您已将 Sublime Text 2 放在 Applications 文件夹中,并且您的路径中有 ~/bin 目录,您可以运行:

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/bin/subl

但它不起作用。我现在在我的用户下有一个文件夹 /bin/ ,这个文件夹包括一个别名。但是当我在subl --help终端内提示时,我得到了错误-bash: subl: command not found

有人可以帮助我吗?

KR & thx, 费边

4

13 回答 13

87

将目录更改为:

/usr/local/bin

然后运行它:

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" subl
于 2013-05-06T00:44:52.027 回答
29

我现在找到了解决方案 - RVM 有问题。解决方法是输入命令

ln -s "/Applications/Sublime Text 2.app/Contents/SharedSupport/bin/subl" ~/.rvm/bin/subl

进入终端。

于 2012-08-09T19:00:12.723 回答
28

Sublime Text 3发生在我身上。

这个符号链接对我有用,我只需要将符号链接目标更改为/usr/local/bin/subl

ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl

解决方案来源Paul Byrne 在这里回答

于 2016-05-20T09:37:45.790 回答
9

使用Homebrew安装 Sublime 通常会自动创建正确的符号链接。

brew install Caskroom/cask/sublime-text 

然后可以像这样访问 Subl:

# Open Sublime at current directory
subl .
于 2016-01-04T22:32:21.130 回答
3

为这个问题选择的解决方案是将 subl 符号链接放在 ~/.rvm/bin 文件夹中,这绝对不是通用解决方案,因为该目录是他安装的程序的一部分。

尽管路径中的任何目录都可以使用,但最常见的解决方案是在主文件夹中创建一个 bin 目录,通过放入export PATH=$PATH:~/bin.bash_profile 将其设置在路径中,然后使用这个新路径运行原始问题中所示的链接命令.

过去,通常将 subl 符号链接放在 /usr/local/bin 中,但从 10.2 版开始,此目录在 OSX 中不再存在,并且 /usr/local 目录不再位于默认路径中。

于 2013-03-25T02:04:26.123 回答
3

为 MAC OSX Mavericks 解决了问题!

我在这个 GitHubGist 上找到了这个答案: https ://gist.github.com/artero/1236170

从 Mac OS X 终端启动 Sublime Text 2

ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime

这是我发现澄清了许多 StackOverflow 响应仅暗示但未明确解释的部分:

现在让我们检查一下是否一切都会顺利进行。输入这个:

打开 ~/.bash_profile

(在某些情况下,配置文件名为 ~/.profile)

您应该在文件的顶部看到以以下开头的一行:export PATH=

这包含当您在终端中键入命令时将为可执行二进制文件查找的所有目录。由于我们在 /usr/local/bin 目录中创建了一个指向 subl 的符号链接,称为 sublime,让我们检查该目录是否列在同一行。

如果是,那就完美了。我们继续吧。如果没有,只需像这样添加并保存文件:

导出 PATH=/usr/local/bin:(...)

注意:此示例中的“(...)”表示将在同一行列出并用冒号分隔的其他文件夹。

如果您的 bash_profile 中尚未设置 PATH,则可以键入:

导出 PATH=/usr/local/bin:$PATH

如果必须将 /usr/local/bin 添加到 PATH,请在继续之前运行以下命令:

源〜/ .bash_profile

这将使用新添加的目录重新加载您的 .bash_profile。

测试

打开终端窗口并运行:

崇高的文件名(用实际文件名替换“文件名”)

希望这也有助于其他人澄清。目前(2014 年秋季)使用 Mac OSX Mavericks。干杯

于 2014-11-07T17:49:55.137 回答
3

如果你只是想让命令使用 sublime text 打开文件,并且你不想将它用作所有命令的默认编辑器,为什么不给你的~/.bash-profile?

alias subl="open -a 'Sublime Text'"

这将适用于打开文件和目录

于 2016-08-16T15:34:54.797 回答
2

在带有 OSX Yosemite 10.10.5 和 sublime text 3 Build 3083 的 MAC 上遇到了同样的问题!

将 git 配置为满足上述要求可以完美地使用:

git config --global core.editor "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl -n -w"

并测试它是否适用于:

git config -e
于 2015-08-31T21:37:49.647 回答
1

它适用于 Mac OSX 10.8.2,echo $PATH显示正确链接的 subl 符号链接,如本文所述。Sublime Text 2 页面上的其他建议似乎不适用于新 Mac

于 2013-03-13T13:26:39.257 回答
0

我发现 subl 有一个别名。键入alias以查看所有已定义的别名。找到源并将其注释掉,或使用unalias subl取消设置。

于 2016-07-23T07:21:13.260 回答
0

对于 .bashrc 或 .zshrc

alias subl="open . -a /Applications/Sublime\ Text.app"
于 2018-06-26T13:12:30.360 回答
0

Catalina 的自动沙盒功能似乎破坏了subl命令。

使用以下别名作为替代

alias subl="open $1 -b com.sublimetext.3"
于 2020-05-15T06:05:26.810 回答
-1

$ subl .没有为我工作之后,

我试过$ bundle exec subl .了,它奏效了。

解决方案:输入$ bundle exec subl .,它应该可以工作。(显然,省略了 $)

于 2015-04-13T00:04:46.257 回答