Quando eu baixa aplicativos de linha de comando, eles estão localizados no meu ~/Downloads/
diretório. Mas acho que este é o lugar errado para ter um aplicativo de linha de comando localizado. Onde no sistema de arquivos do Mac OS X devo armazenar aplicativos de linha de comando?
/Applications/
também parece errado, é mais para aplicativos de desktop. E /bin/
soa mais para aplicativos que pertencem ao OS X.
Respostas:
Como o OS X vem de uma herança unix, convém armazenar arquivos do sistema
/usr/local/bin
para aplicativos de linha de comando e scripts que pertencem ao sistema localmente e não a um usuário específico. Pode ser necessário criar este diretório primeiro executando:Você pode mover qualquer aplicativo de linha de comando para essa pasta executando:
Para garantir que faça
/usr/local/bin
parte do seu caminho de pesquisa padrão no Terminal, verifique o conteúdo/etc/paths
e adicione-o, se necessário:Alguns usuários criam um segundo diretório para scripts no nível do usuário, mas isso está ainda mais sujeito a preferências pessoais.
Normalmente, faço um diretório bin em cada pasta do usuário e oculto-o no Finder - mas você pode tomar essa decisão se deseja ocultá-lo:
Nesse caso, convém que o caminho de cada usuário inclua esse local modificando os scripts de inicialização do shell (
~/.bash_profile
para o bash, que é o shell padrão)ou codificando o caminho para cada aplicativo quando você o executa.
fonte
homebrew
para meus próprios scripts de shell I tenho um ~ / Dropbox / bin / que também adicionei ao meu $ PATH para que eu tenha todos os meus scripts de shell personalizados em todos os meus Macs. Mas eu faço isso além de / usr / local / bin / e não em vez disso.~/bin
diretório, torná-lo invisívelchflags uchg ~/bin
e adicioná-lo aos usuários~/.bash_profile
para torná-lo parte dos usuários $ PATH.~/bin
é um local superior para segurança e migração. Caso contrário, você deve se lembrar das coisas que você deixou em / usr / local / bin. Eln -s ~/bin ~/Dropbox/
também é legal.Considere criar um
/opt
diretório, que é outro local em que o software Unix personalizado apareceria por convenção.fonte
/opt/
é muito útil para aplicativos completos, ao passo que/usr/local/bin/
é mais apropriado para scripts de linha de comando independentes. Geralmente é preferível usar/opt/
nos casos em que uma coleção de scripts relacionados atua como uma biblioteca (por exemplo,/opt/myscriptslib/bin/
).