Macos 无法使subl命令在OSX上为ST3工作
我正试图让Subl命令在我的MacOSX小牛上运行。我的根应用程序文件夹中有ST3 当我运行下面的行时,我也使用sudo运行它并得到相同的消息Macos 无法使subl命令在OSX上为ST3工作,macos,git,sublimetext3,Macos,Git,Sublimetext3,我正试图让Subl命令在我的MacOSX小牛上运行。我的根应用程序文件夹中有ST3 当我运行下面的行时,我也使用sudo运行它并得到相同的消息 ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl 在终端中,我得到
ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
在终端中,我得到以下错误
ln: /Users/username/bin/subl: No such file or directory
-bash: subl: command not found
我仔细检查了一下,看它是否能正常工作
subl --help
但是得到以下错误
ln: /Users/username/bin/subl: No such file or directory
-bash: subl: command not found
我正试图让它工作,这样我就可以用Git使用它,并从那里用Submite打开文件
我的.bash_配置文件如下所示
export PATH=/usr/local/git/bin:$PATH
export PATH="/usr/local/bin:$PATH"
export EDITOR='subl -w'
if [ -f ~/.git-completion.bash ]; then
source ~/.git-completion.bash
fi
有谁能建议如何解决这个问题,
谢谢问题很可能是您首先没有
/Users/username/bin
目录,因此尝试创建符号链接的ln
命令无效。其次,即使~/bin
确实存在,它也不是路径的一部分,因此将永远找不到subl
命令
为了让事情变得更简单,只需在/usr/local/bin
中创建符号链接。它(希望)已经存在,并且已经在您的路径中。快跑
sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl
你应该准备好了
回应您的评论:这里有两个命令-ln
,它创建一个,和export
,它只创建一个(PATH
是一个特殊的环境变量,它包含在终端中输入内容时搜索命令的目录列表)
创建符号链接时,在创建链接之前,需要存在整个目录树。因此,虽然/Users
和/Users/username
已经存在,/Users/username/bin
没有,因此无论是否使用sudo
,ln
命令都失败。为了在主目录(也称为~
)中创建bin
目录,首先需要运行mkdir~/bin
,然后使用第一个ln
命令创建符号链接(没有sudo
)。接下来,您需要将~/bin
添加到路径
环境变量中,方法是将~/.bash_profile
中的前两行替换为
export PATH=~/bin:/usr/local/bin:/usr/local/git/bin:$PATH
但是,由于/usr/local/bin
已经在您的路径中,最简单的解决方案是在那里创建指向subl
的符号链接,而不是创建一个新的~/bin
目录,创建符号链接,编辑~/.bash\u profile
,然后重新启动shell。我也有这个要求。我使用alias
而不是那些符号链接方法。这是相当容易的,这里是如何
步骤1:打开~/.bash_配置文件,将下面的行添加到其中,然后保存并关闭它
alias subl='/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl'
步骤2:执行source
使alias
设置生效
source ~/.bash_profile
现在,您可以使用命令subl
和文件或目录路径打开它们,尽情享受吧 谢谢,这很有效,但不幸的是我不明白为什么。从教程中,我认为我的第二个export语句创建了我需要的目录needed@PierceMcGeough请看我上面的扩展答案,希望这能解释为什么我这么做,以及为什么你最初的尝试失败。谢谢,这很有意义。一些不同的教程说~/bin应该已经存在了。如果我删除export PATH=“/usr/local/bin:$PATH”行,它是否应该停止工作?