sublime text 2 命令创建链接但命令为空

sublime text 2 命令创建链接但命令为空

我想创建有关放置在应用程序中的 sublime text2 的链接。

如果我将 粘贴到/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/sublbash 中,Sublime Text 2 将会打开。

我用的是

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

并且我检查我的路径/usr/local/bin是否echo $PATH添加了/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:

然后我 cd 到/usr/local/bin并发现有一个 subl 脚本,但是我使用 vim 打开它,文件全是空白的。

然后我重新启动终端并输入subl但结果-bash: subl: command not found

我该如何修复它?

答案1

如果您还不想使用 Sublime Text 3(它与 Sublime Text 2 有很大不同,并且仍处于测试阶段),以下是解决您的问题的方法。只需从终端运行以下每个命令(按顺序),您就应该一切就绪:

sudo rm -rf /usr/local/bin/subl

这将删除subl中的所有链接/usr/local/bin。然后:

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

这将重新创建指向正确位置的链接。请确保您完全按照我输入的方式运行命令,否则它将不起作用。我稍后会解释原因。最后,重新启动终端并输入:

subl

以确保流程正常运作。


你的原因是

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

命令不起作用是因为您将Applications/...路径放在了引号中" 并且使用反斜杠转义空格\。您应该执行其中一个,但不能同时执行两个。上面的命令仅用于\转义空格。使用引号时,字符串中的每个字符都按字面意思包括\在内,包括字符。这就是为什么当您打开文件时文件是空白的vim- 它指向一个不存在的路径。

顺便说一句,虽然您可以打开/usr/local/bin/sublvim但我不建议这样做,因为它是一个二进制可执行文件,所以您的屏幕上只会看到垃圾。

祝你好运!

相关内容