mapeamento de comandos linux para aqueles dependentes de caminho longo

mapeamento de comandos linux para aqueles dependentes de caminho longo

Sinto muito se esta pergunta foi feita de uma maneira diferente antes. Fiz meu devido esforço de pesquisa no Google e no StackOverFlow (SOF), mas os termos de pesquisa que tentei não retornaram a resposta que procurava.

O problema é: instalei o Python virtualenv localmente (ou seja, em "~/.local/") porque não tenho acesso sudo à minha máquina escolar. O virtualenv agora fica em "~/Download/modules/virtualenv-1.9.1/" e quando tento usá-lo, sempre tenho que digitar algo como:

$ python ~/Download/modules/virtualenv-1.9.1/virtualenv.py --distribute venv

Eu gostaria de fazer algo como

$ virtualenv --distribute venv

Eu sei que posso adicionar "alias" em "~/.cshrc" (ou equivalente ao bash), mas estou me perguntando se existe uma maneira alternativa de fazer isso em vez de adicionar mais aliases. Sinceras desculpas se esta for uma pergunta repetida (e ingênua/iniciante). Como mencionei antes, não consegui encontrar os termos de pesquisa corretos para descobrir a solução no Google/SOF. Obrigado pela ajuda.

Responder1

Claro, você pode definir uma variável local. Experimente isto:

export MY_CUSTOM_VAR=/Users/YOURUSERNAMEHERE/Download/modules/virtualenv-1.9.1

Então você poderá usar $MY_CUSTOM_VARno lugar desse diretório em qualquer comando.

Responder2

Eu provavelmente colocaria um script~/bin/venv

#/bin/sh
exec python \
    ~/Download/modules/virtualenv-1.9.1/virtualenv.py \
    --distribute venv \
    "$@"

(torne esse executável com chmod u+x ~/bin/venv).

Não esqueça de colocar ~/bino seu $PATH.

informação relacionada