Isso é apenas temporário para o ambiente do processo atual. Há setx se você quiser fazer uma alteração mais permanente.
Se eu quiser adicionar o java \ bin à minha variável de ambiente, posso fazer isso a partir do prompt de comando usando o comando SET ou isso é apenas temporário?
Isso é apenas temporário para o ambiente do processo atual. Há setx se você quiser fazer uma alteração mais permanente.
Cada processo herda as variáveis de ambiente do processo que o gerou, e quaisquer alterações feitas usando o comando SET
são locais para esse processo (e qualquer um que surja após a alteração) por padrão.
Para fazer uma alteração em uma variável de ambiente que “adere”, seja para o usuário atual ou para todo o sistema, você precisa usar uma ferramenta especial. Existem muitas dessas ferramentas, mas darei uma lista das melhores.
Há da Microsoft SETX conforme mencionado por Ronald . Ele pode ser encontrado no kit de recursos ou separadamente de algumas páginas da Microsoft . Geralmente é uma boa que a maioria das pessoas não terá problemas. No entanto, os testes descobriram que ele pode deixar de funcionar ou até mesmo falhar se o valor for muito longo (parece ter um limite de ~ 1 KB). E, como acontece, a variável PATH
é a variável mais provável para ficar realmente longa…
Existe uma ferramenta chamada SetEnv no CodeProject que executa essa função. É o meu favorito atual porque trabalhei com o autor para aprimorá-lo e resolver alguns problemas; por isso cumpre todas as minhas expectativas de tal ferramenta.
Existe outra ferramenta de terceiros chamada SETENV que também executa essa função.
Além disso, você pode alterar a variável por meio da interface MyComputer->Properties->Advanced->EnvironmentVariables
.
Finalmente, você poderia seguir o caminho manual (escrevi um script para fazer isso com precisão), onde você define a string de ambiente diretamente no registro e emite uma mensagem WM_SETTINGCHANGE para todas as janelas de nível superior. .
Para o registro , você perguntou sobre adicionar ao caminho. Não há nenhuma maneira padrão ou interna de estender uma variável de ambiente (embora essa função possa ser facilmente adicionada a qualquer uma das ferramentas acima). Em vez disso, quando você altera uma variável, você substitui . Portanto, para adicionar um caminho para a variável PATH
, você usaria um comando como:
SET PATH="%path%;C:\Newpath"
ou
PATH "%path%;C:\Newpath"
Mas lembre-se de que nenhum dos comandos anteriores permanecerá, portanto você pode usar o comando anterior, substituindo a chamada por SET
por SETX
, SetEnv
, etc. O último comando não pode ser colocado em espera. / p>
HTH
Da minha experiência, isso é temporário e afeta apenas a janela de comando na qual você o emitiu. É necessário modificar as configurações do sistema por meio do painel de controle para que isso aconteça em todas as novas janelas.