Para chamar um programa pelo nome, os shells pesquisam os diretórios na variável de ambiente $PATH
. No Debian, o $PATH
padrão para seu usuário deve incluir /home/YOUR-USER-NAME/bin
(ou seja, ~/bin
).
Primeiro, verifique se o diretório ~/bin
existe ou crie-o, se não existir:
mkdir -p ~/bin
Você pode vincular binários a esse diretório para torná-lo disponível para o shell:
mkdir -p ~/bin
ln -s /home/user/Downloads/VSCode-linux-x64/Code ~/bin/vscode
Isso permitirá que você execute vscode
na linha de comando ou em um lançador de comandos.
Observação: você também pode copiar binários para os diretórios $PATH
, mas isso pode causar problemas se eles dependerem de caminhos relativos.
Em geral, porém, é sempre preferível instalar corretamente o software usando os meios fornecidos pelo sistema operacional (apt-get, pacotes deb) ou as ferramentas de compilação de um projeto de software. Isso garantirá que os caminhos dependentes (como scripts iniciais, man pages, configurações etc.) sejam configurados corretamente.
Atualização: Também refletindo os comentários de Thomas Dickey e A resposta de Faheem Mitha ao que costumo fazer para um software que vem como um tarball com um binário de nível superior e espera ser executado a partir daí:
Coloque-o em um local sadio (em ordem de conformidade com os padrões /opt
, /usr/local
ou uma pasta no seu diretório pessoal, por exemplo ~/build
) e crie um wrapper de script executável em um $PATH
location (por exemplo, /usr/local/bin
ou ~/bin
) que muda para esse local e executa o binário:
#/bin/sh
cd "$HOME/build/directory"
exec ./top-level-binary "$@"
Como isso emula a mudança para esse diretório e a execução manual do binário, fica mais fácil depurar problemas como caminhos relativos inexistentes.