Eu tentei três maneiras diferentes de criar um link simbólico para o Sublime Text no meu Mac e, depois de reiniciar o terminal a cada vez, ele ainda continua me dizendo que o comando não foi encontrado. Estou usando um Mac com Yosemite (OSX Yosemite, 10.10). Como posso criar um link simbólico para que eu possa abrir o Sublime com o sub
comando?
1
ln -s 'Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl' /bin/sub
Dois
ln -s "Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl" /bin/sub
Três (sem aspas)
ln -s Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /bin/sub
/Applications/…
, como apontado na resposta, e você precisa de privilégios de root para escrever/bin
(conseqüentementesudo
). A questão residual é se é suficiente para executar o executável assim. Tem certeza de que não quer um script de shell que faça algo comoopen "/Applications/Sublime\ Text.app"
em vez disso, como o conteúdo do arquivo em/bin
?Respostas:
Você está sentindo falta do '/' no início do seu aplicativo e
sudo
Como/bin
É de propriedade deroot
e você não pode realmente escrever para ele como um usuário normal. Como você tem atualmente, isso só funcionaria se o seu diretório atual fosse a raiz do sistema. Isso pressupõe, claro, que o aplicativo Sublime Text esteja na sua pasta principal de Aplicativos.Tente isso ...
Uma reflexão tardia: considera-se má prática mudar o conteúdo de
/bin
e/usr/bin
porque qualquer atualização futura do OS X pode limpar o conteúdo lá./usr/local/bin
é o local habitual para instalar binários fornecidos pelo usuário,pode ser a melhor opção.
Ou (como você provavelmente nunca precisará executar o Sublime Text a partir de um script shell), simplesmente defina um alias bash
que deve ser adicionado ao seu arquivo de inicialização bash para torná-lo
fonte
sudo
e se você vai citar o nome do caminho, então não use barras invertidas para escapar de espaços!Tarde para a festa. Eu encontrei o mesmo problema ao configurar meu Mac e tentei algumas coisas. Aqui está o que funcionou para mim.
Para mais informações, vá para este repo do github .
fonte
sudo
e é necessário, neste caso, como isso é diferente do que já foi oferecido na resposta do mockman? Outro então aquele fato que ele escolhe usarsub
vs.subl
, para digitar um caractere a menos repetidamente para usá-lo, não é realmente do que eu posso ver!/usr/local/bin
não/usr/bin
como os comandos acima./usr/local/bin
é o diretório recomendado para aplicativos do usuário, enquanto / usr / bin é usado para programas do usuário gerenciados por distribuição. Assim,sub
vssubl
é não a única mudança, simplesmente depende da preferência do usuário; o que eles querem escrever. Peço desculpas se causar confusão.ln: /usr/local/bin/subl: Permission denied
2. Eu sugiro que você releia a resposta do mockman como ele tem absolutamente/usr/local/bin/
no segundosudo ln -s
comando em sua resposta!