环境变量 – 为什么我不能从命令行使用sudo启动Sublime Text 3?

我刚刚在OS X Maverick上安装了Sublime Text 3,它运行正常.

我想从命令行启动它,我给它添加了一个符号链接:

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

有效.我现在可以做

$subl <-- Launches Sublime Text 3 sucessfully
$which subl
/usr/local/bin/subl

$echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

但我不能这样做:

$sudo subl
Unable to find Sublime Text

我无法弄清楚原因,因为:

$sudo which subl
/usr/local/bin/subl

sudo echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

为什么我不能从命令行使用sudo启动Sublime Text 3?

最佳答案 正如你现在告诉我的那样:

$sudo /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl

成功启动Sublime Text 3,然后我建议使用shell别名,而不是使用符号链接来使这更方便.

编辑你的〜/ .bash_profile并添加:

alias subl="/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
alias sudosubl="sudo /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl"
点赞