Pode ver o arquivo em / usr / local / bin com ls, mas tentar executá-lo produz arquivos não encontrados?

2

Estou no OS X, mas como esse é um trabalho terminal, percebi que esse era o melhor lugar para perguntar. Estou tentando fazer com que o Sublime Text funcione na linha de comando via subl e não tenha sorte. Eu corri ln -s <location of subl file in Applications; not part of $PATH> /usr/local/bin/subl para criar um link para ele.

Quando executo ls on /usr/local/bin , posso ver o link subl no diretório.

Mas quando tento executá-lo, ele me diz Command not found . E se eu tentar com um caminho absoluto digitando /usr/local/bin/subl , ele me diz No such file or directory. Não sei como solucionar isso. Idéias?

A saída de readlink /usr/local/bin/subl é

/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl
    
por Aerovistae 06.07.2015 / 00:31

1 resposta

1

Você tem uma barra invertida extra no seu link simbólico. O caminho real é

/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl

mas você criou um link simbólico para

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

Quando você usa o texto do link simbólico no shell, a barra invertida é interpretada como um caractere de escape, portanto, você obtém o caminho correto. Mas você de alguma forma citou a barra invertida quando criou o link simbólico, então você acabou com uma barra invertida onde não deveria haver uma.

Corrigir o symlink: executar

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

Dica: use a conclusão ao se referir a um arquivo existente. Dessa forma, você não digitará incorretamente o nome.

    
por 06.07.2015 / 01:34