【发布时间】:2015-06-10 16:52:30
【问题描述】:
所以我刚开始使用终端来管理文件等,我试图使用这行代码设置我的崇高文本快捷方式:
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
但是,当我尝试这样做时,它显示 Permission Denied,我不知道为什么。我正在使用运行 Mac 10.10.2 的 Mac。
【问题讨论】:
所以我刚开始使用终端来管理文件等,我试图使用这行代码设置我的崇高文本快捷方式:
ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/sublime
但是,当我尝试这样做时,它显示 Permission Denied,我不知道为什么。我正在使用运行 Mac 10.10.2 的 Mac。
【问题讨论】:
对于崇高文本 3:
sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/sublime
【讨论】:
如果您查看/usr/local/bin 的权限,您会发现它归root 所有:
$ cd /usr/local
$ ls -l .
total 0
drwxr-xr-x@ 8 root wheel 272 Apr 16 11:31 bin
drwxr-xr-x 3 root wheel 102 Apr 16 10:02 include
drwxr-xr-x@ 3 root wheel 102 Apr 16 10:19 share
因此您需要使用sudo 来获得超级用户权限。您需要输入您的用户帐户密码,并且您需要成为 Admin 用户(请参阅系统偏好设置 > 用户和组):
$ sudo ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin
请注意,您不需要在目的地后面加上subl,因为ln 会自行解决。
【讨论】:
如果您使用的是 Mac,我建议您在您的 PATH 上创建一个文件 /usr/local/bin/sublime 或其他位置,然后将 open -a Sublime\ Text $@ 放入其中,而不是创建链接。 open -a 告诉 Mac 打开您的 /Applications/ 目录中的应用程序。 $@ 符号传递您提供给脚本的任何其他参数。因此,您可以通过sublime file.ext 打开文件。也就是说,您的权限拒绝可能是您没有/usr/local/bin 目录的权限。如果是这种情况,您需要使用chmod 更改权限,或者将脚本放在其他位置,例如~/bin
【讨论】:
此外,如果您使用的是 Sublime Text 3,这是符号链接的正确命令:
ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl
【讨论】: