Como adicionar um diretório ao caminho?

Como faço para adicionar um diretório ao $PATH no Ubuntu e tornar as mudanças permanentes?

Mear ~/.perfil para definir $PATH

Um caminho definido em .bash_profile será definido apenas em um shell de login bash (bash -l).Se você colocar seu caminho em .profile ele estará disponível para sua sessão de desktop completa. Isso significa que até o metacity o usará.

Por exemplo ~/.profile:

if [ -d "$HOME/bin" ] ; then  PATH="$PATH:$HOME/bin"fi

Btw, você pode verificar a variável PATH de um processo observando seu ambiente em /proc/[pid]/environ (substitua [pid] pelo número de ps axf). E. g. utilização grep -z "^PATH" /proc/[pid]/environ

Notar:

bash como um shell de login não analisa .profile se qualquer um .bash_profile ou .bash_login existir. De man bash :

ele procura ~/.bash_profile,~/.bash_login, e ~/.perfil, nessa ordem, e lê e executa comandos do primeiro que existe e é legível.

Veja o Respostas abaixo para informações sobre .pam_environment, ou .bashrc para shells interativos sem login ou defina o valor globalmente para todos os usuários, colocando um script em /etc/profile.d/ ou usar /etc/X11/Xsession.d/ para afetar a sessão display managers.

Editar .bashrc em seu diretório inicial e adicione a seguinte linha:

export PATH="/path/to/dir:$PATH"

Você precisará obter o seu .bashrc ou logout / login (ou reinicie o terminal) para que as alterações entrem em vigor. Para obter o seu .bashrc, digitar

$ source ~/.bashrc

O lugar recomendado para definir permanente, sistema-largo as variáveis de ambiente que se aplicam a todos os usuários estão em:

/etc/environment

(que é onde o padrão PATH é definido)

Isso funcionará em desktop ou console, gnome-terminal ou TTY, rain or shine;)

  • Para editar, abra o terminal e digite:

    sudoedit /etc/environment

    (ou abra o arquivo usando sudo em seu editor de texto favorito)

Para fazê-lo funcionar sem reiniciar, execute . /etc/environment ou source /etc/environment. Como este arquivo é apenas um script simples, ele será executado e atribuirá o novo caminho ao PATH variavel. Para verificar executar env e ver o PATH valor na listagem.

Relacionado:

Eu acho que a maneira canônica no Ubuntu é:

  • criar um novo arquivo em /etc/profile.d/

    sudo vi /etc/profile.d/SCRIPT_NAME.sh
  • adicione lá:

    export PATH="YOUR_PATH_WITHOUT_TRAILING_SLASH:$PATH"
  • e dê permissão para executar

    sudo chmod a+x /etc/profile.d/SCRIPT_NAME.sh

Para novatos completos (como eu sou) que estão mais confortáveis com GUI:

  1. Abra o seu $HOME pasta.
  2. Ir Visualizar & rarr; Mostrar Arquivos Ocultos ou pressione Ctrl + H.
  3. Clique com o botão direito em .profile e clique em Abra Com O Editor De Texto.
  4. Role até o final e adicione PATH="$PATH:/my/path/foo".
  5. Salvar.
  6. Saia e faça login novamente para aplicar alterações (deixe o Ubuntu realmente carregar .profile).

Para variáveis de ambiente persistentes disponíveis apenas para usuários específicos. Eu recomendo a documentação oficial do Ubuntu.

https://help.ubuntu.com/community/EnvironmentVariables

Referindo-se à documentação acima, configurei meu Caminho do Android SDK-ferramentas por:

  1. criacao ~/.pam_environment arquivo no diretório inicial.
  2. cujo conteúdo é PATH DEFAULT=${PATH}:~/android-sdk-linux/tools.
  3. o caminho de usuário personalizado adicional pode ser adicionado separando caminhos com ponto (:).
  4. isso requer re-login, o que significa que você precisa fazer logout e log-in de volta ao ambiente de desktop.

Coloque essa linha em seu ~/.bashrc arquivo.

Ele é obtido sempre que você abre um terminal

EDITAR: Com base nos comentários abaixo, para uma configuração mais geral que se aplicará a todos os shells (incluindo quando você bater Alt-F2 em Unity), adicione a linha ao seu ~/.profile arquivo. Provavelmente não deve fazer as duas coisas, pois o caminho será adicionado duas vezes ao seu PATH ambiente se você abrir um terminal.