Existem várias maneiras de fazer isso. A solução real depende do objetivo.
Os valores das variáveis geralmente são armazenados em uma lista de atribuições ou em um script de shell que é executado no início da sessão do sistema ou do usuário. No caso do script de shell, você deve usar uma sintaxe específica do shell e export
ouset
comandos.
No âmbito do sistema
/etc/environment
Lista de atribuições únicas, permite referências. Perfeito para adicionar diretórios de todo o sistema, como /usr/local/something/bin
a PATH
variável ou definir JAVA_HOME
. Usado pelo PAM e SystemD.
/etc/environment.d/*.conf
Lista de atribuições únicas, permite referências. Perfeito para adicionar diretórios de todo o sistema, como /usr/local/something/bin
a PATH
variável ou definir JAVA_HOME
. A configuração pode ser dividida em vários arquivos, geralmente um por cada ferramenta (Java, Go, NodeJS). Usado pelo SystemD que, por design, não passa esses valores para os shells de login do usuário.
/etc/xprofile
Script de shell executado ao iniciar a sessão do Sistema X Window. Isso é executado para todos os usuários que efetuam login no X Window System. É uma boa opção para PATH
entradas válidas para todos os usuários como/usr/local/something/bin
. O arquivo é incluído por outro script, portanto, use a sintaxe do shell POSIX e não a sintaxe do shell do usuário.
/etc/profile
e /etc/profile.d/*
script Shell. Essa é uma boa opção para sistemas somente de shell. Esses arquivos são lidos apenas por shells no modo de login.
/etc/<shell>.<shell>rc
. Script de shell. Esta é uma péssima escolha porque é específica do shell único. Usado no modo não-login.
Sessão de usuário
~/.pam_environment
. Lista de atribuições exclusivas, sem referências permitidas. Carregado pelo PAM no início de cada sessão do usuário irrelevante se for uma sessão ou shell do X Window System. Você não pode fazer referência a outras variáveis, incluindo HOME
ou PATH
assim que tem uso limitado. Usado pelo PAM.
~/.xprofile
Script de shell. Isso é executado quando o usuário efetua login no sistema X Window System. As variáveis definidas aqui são visíveis para todos os aplicativos X. Escolha perfeita para estender PATH
com valores como ~/bin
ou ~/go/bin
ou definir usuário GOPATH
ou específico NPM_HOME
. O arquivo é incluído por outro script, portanto, use a sintaxe do shell POSIX e não a sintaxe do shell do usuário. Seu editor de texto gráfico ou IDE iniciado pelo atalho verá esses valores.
~/.profile
, ~/.<shell>_profile
, ~/.<shell>_login
Shell script. Será visível apenas para programas iniciados no terminal ou emulador de terminal. É uma boa opção para sistemas somente de shell. Usado por shells no modo de login.
~/.<shell>rc
. Script de shell. Esta é uma péssima escolha porque é específica do shell único. Usado por shells no modo sem login.
Notas
O Gnome em Wayland inicia o shell de login do usuário para obter o ambiente. Ele usa efetivamente configurações shell de login ~/.profile
, ~/.<shell>_profile
,~/.<shell>_login
arquivos.
Manuais
- meio Ambiente
- environment.d
- bater
- traço
Documentação específica de distribuição
Relacionado
Diferença entre o Shell de Login e o Shell Não-Login?
.bash_profile
deva ser adicionado à lista?/etc/environment
. Mas posso atualizá-lo sem sair e entrar? Às vezes eu não uso bash ou sh, entãosource /etc/environment
não funciona.Você precisa adicioná-lo ao seu arquivo
~/.profile
ou~/.bashrc
.Dependendo do que você está fazendo, você também pode querer vincular os binários:
Observe que isso não atualizará automaticamente o caminho para o restante da sessão. Para fazer isso, você deve executar:
fonte
$PATH
e/usr/bin
. 2) Deveria/usr/bin
estar lá. 3) Você não deveria preferir usar/usr/local/bin
?cd
para o diretório em que ele foi descompactado e, em seguida, executels
--- e então perceba que o tarball tinha um programa maliciosols
nele.No Ubuntu, edite
/etc/environment
. Seu único objetivo é armazenar variáveis de ambiente. Originalmente, a variável $ PATH é definida aqui. Esta é uma pasta do meu/etc/environment
arquivo:Assim, você pode simplesmente abrir esse arquivo como root e adicionar o que quiser.
Para resultados imediatos, execute (tente como usuário e root normais ):
ATUALIZAR:
Se você usar
zsh
(também conhecido como Z Shell), adicione esta linha logo após os comentários em/etc/zsh/zshenv
:Encontrei essa pequena peculiaridade no Ubuntu 15.10, mas se o seu zsh não está recebendo o caminho correto , talvez seja por isso
fonte
$PATH
também é definido/etc/profile
no Arch Linux.Coloque a
export
declaração~/.bashrc
. Meu .bashrc contém isso:fonte
.profile
', não encontrei.bashrc
source ~/.bashrc
para recarregar a.bashrc
configuração. Em seguida, ele irá trabalharexport
palavra-chave é necessária apenas sePATH
ainda não estiver sinalizada como uma variável de ambiente - o que será quase incondicionalmente. SimplesmentePATH=/var/lib/gems/1.8/bin:/home/fraxtil/.bin:$PATH
teria o mesmo efeito.Você pode definir
$PATH
permanentemente de duas maneiras.Para definir o caminho para um usuário específico: pode ser necessário fazer a entrada no
.bash_profile
diretório inicial do usuário.por exemplo, no meu caso, definirei o caminho do java no perfil de usuário do tomcat
Para definir o caminho comum para TODOS os usuários do sistema, pode ser necessário definir o caminho da seguinte maneira:
fonte
/etc/profiles
com umas
na sua distribuição? O meu não tems
. Eu acho que você tem um erro de digitação.Você pode usar no Centos ou RHEL para usuário local:
Isso adiciona o diretório atual (ou você pode usar outro diretório) ao PATH, tornando-o permanente, mas entra em vigor no próximo logon do usuário.
Se você não quiser fazer um novo logon, poderá usar:
Que recarregar o
# User specific environment and startup programs
comentário está presente em.bash_profile
fonte
Você também pode definir permanentemente, editando um destes arquivos:
/etc/profile
(para todos os usuários)~/.bash_profile
(para usuário atual)~/.bash_login
(para usuário atual)~/.profile
(para usuário atual)Você também pode usar
/etc/environment
para definir uma variável de ambiente PATH permanente, mas ela não suporta expansão de variável .Extraído de: http://www.sysadmit.com/2016/06/linux-anadir-ruta-al-path.html
fonte
Eu me deparei com essa pergunta ontem ao procurar uma maneira de adicionar uma pasta contendo meus próprios scripts ao PATH - e fiquei surpreso ao descobrir que meu próprio
~/.profile
arquivo (no Linux Mint 18.1) já continha isso:Assim, tudo que eu precisava fazer era criar a pasta
~/bin
e colocar meus scripts lá.fonte
Eu acho que a maneira mais elegante é:
1. adicione isso no arquivo ~ / .bashrc Execute este comando
adicione seu caminho dentro dele
2.source ~ / .bashrc
(Ubuntu)
fonte
Você pode adicionar essa linha ao arquivo de configuração do console (por exemplo, .bashrc) ou ao .profile
fonte
/home/(username)
ls -a
a vê-los.)Adicionar permanentemente variável PATH
Global:
Local (apenas para usuário):
Para reinicialização global . Para logon local .
Exemplo
Antes:
Depois de:
Como alternativa, você pode apenas editar o perfil:
Outra maneira (obrigado gniourf_gniourf):
fonte
echo 'export PATH=$PATH:/new/path/variable'
... E, a propósito,export
é muito provável que a palavra-chave seja inútil, pois aPATH
variável provavelmente já está marcada como exportada./usr/local
usando~/.bashrc
. agora se você deseja anexar/opt/bin
à mesma variável usando/etc/bash.bashrc
; $ PATH será convertido para a mesma sequência estática, como resultado, $ PATH será substituído em vez de anexado a ... Será uma questão de preferência do sistema para um arquivo sobre outro1. modifique o arquivo "/ etc / profile".
Pressione a tecla "i" para entrar no status de edição e mover o cursor para o final do arquivo. Entradas adicionais:
Pressione a tecla "Esc" para sair do status de edição, ': wq' salve o arquivo.
2. Tornar a configuração eficaz
Explicar: o arquivo de perfil funciona para todos os usuários; se você quiser ser válido apenas para o usuário ativo, defina o arquivo ".bashrc"
fonte
Depois de tanta pesquisa, encontrei uma solução simples para isso (estou usando o SO elementar ), inspirada no seguinte link .
Eu acredito que esta é a solução permanente para definir o caminho no flutter na distribuição Ubuntu
Espero que isso seja útil.
fonte
os arquivos nos quais você adiciona o comando export dependem se você estiver no modo de logon ou não.
se você estiver no modo de login, os arquivos que você está procurando são / etc / bash ou /etc/bash.bashrc
se você não estiver no modo de login, estará procurando o arquivo /.profile ou os arquivos no diretório /.profiles.d
os arquivos mencionados acima se estiverem as variáveis do sistema.
fonte
Adicionar a
/etc/profile.d
pasta de script[name_of_script].sh
com a linha:export PATH=$PATH:/dir
. Todo script dentro da/etc/profile.d
pasta é executado automaticamente/etc/profile
no login.fonte
Zues77 tem a idéia certa. O OP não disse "como posso abrir caminho"? O OP queria saber como anexar permanentemente a $ PATH:
É aqui que está definido para tudo e é o melhor lugar para alterá-lo para todas as coisas que precisam de $ PATH
fonte
Minha resposta é, em referência à criação de
go-lang
emUbuntu linux/amd64
.Eu têm enfrentado o mesmo problema de definir o caminho de variáveis de ambiente (GOPATH
eGOBIN
), perdê-la na saída do terminal e reconstruí-lo usando asource <file_name>
cada erro time.The foi a de colocar o caminho (GOPATH
eGOBIN
) na~/.bash_profile
pasta Depois de desperdiçar algumas boas horas, descobri que a solução era colocarGOPATH
eGOBIN
no~/.bash_rc
arquivo da maneira:e, assim, a instalação do go funcionou bem e não houve perdas de caminho.
EDIT 1: A razão pela qual esse problema pode estar relacionado é que as configurações para shells sem login, como o terminal ubuntu ou o gnome-terminal onde executamos o código go, são retiradas do
~./bash_rc
arquivo e as configurações para shells de login são retiradas do~/.bash_profile
arquivo, e do~/.profile
arquivo se o~/.bash_profile
arquivo estiver inacessível.fonte
Digamos que você esteja executando o MacOS e tenha um binário confiável e que gostaria de disponibilizar em todo o sistema, mas não necessariamente deseje o diretório no qual o binário será adicionado ao seu PATH, você pode optar por copiar / mover o binário para
/usr/local/bin
, que já deve estar no seu caminho. Isso tornará o binário executável como qualquer outro binário ao qual você já tenha acesso no seu terminal.fonte
Pode ser adicionado diretamente usando o seguinte comando:
fonte
bash
, de modo que não é muito útil.a melhor maneira simples é a seguinte linha:
PATH="<directory you want to include>:$PATH"
no seu arquivo .bashrc no diretório inicial.
Ele não será redefinido, mesmo se você fechar o terminal ou reiniciar o seu PC. É permanente
fonte
Eu acho que a maneira mais elegante é:
1. adicione isso no arquivo ~. / Bashrc
2. fonte ~ / .bashrc
(Ubuntu)
fonte
Uma maneira de adicionar um caminho permanente, que funcionou para mim, é:
reinicie o computador e aqui vamos o caminho, lá permanentemente aplausos.
fonte
Para distribuição debian, você precisa:
fonte
Este é um one-liner . Ele adiciona uma linha ao
.bashrc
. Essa linha vai verificar se o diretório já foi adicionado ao caminho e acrescentar, se não. Isso impedirá a duplicação do diretório no caminho toda vez que você for fonte.bashrc
.fonte