Se eu tiver uma instância do PowerShell ISE em execução e instalar algo que modifique o PATH ou o modifique de qualquer forma fora do PowerShell, será necessário reiniciar o PowerShell para que ele veja a variável PATH atualizada.
Existe uma maneira de recarregar o caminho no PowerShell sem reiniciá-lo?
powershell
console
powershell-ise
roubar
fonte
fonte
refreshenv
. Basicamente, isso executa uma versão mais elaborada do comentário de rob.refreshenv
não funcionou. A resposta aqui ('Robs Comment') fez o truque bem. Então, pode haver algumas situações onde uma abordagem funciona eo outro não ...refreshenv
isso não funcionará. Osrefreshenv
únicos trabalhos em shells subseqent abertos.Tente obter o caminho da máquina e atribuí-lo ao caminho da sessão.
fonte
A maneira mais fácil, use o Chocolatey (freeware). Funciona para o CMD e o PowerShell. Então você poderá recarregar PATH (com expansão variável) com um comando simples:
Instalação a partir do cmd (requer direitos de administrador):
Exemplo de uso:
fonte
refreshenv
não funcionou para mim (Windows 10). Eu ainda tinha que abrir uma nova janela para entrar em vigor.Com base na resposta do mpen , aqui está uma função do PowerShell:
Então é só ligar
refresh-path
.fonte
Se o seu caminho contiver variáveis de ambiente que não foram definidas no início da sessão, você também precisará expandi-las:
Para mim, isso foi útil após a instalação do NVM, que define e adiciona% NVM_HOME% ao caminho.
Para levar isso à sua conclusão lógica, você pode usar esta função recursiva para expandir:
E então use:
Eu abriu uma questão de adicionar esta solução em
refreshenv
de Chocolatey.fonte
Apenas para adicionar outras respostas, certifique-se de não adicionar junções supérfluas filtrando, caso o usuário tenha um caminho vazio.
Ou, mais útil, se você estiver executando um script que adiciona uma variável de ambiente diferente ou múltipla, use uma função para redefinir todas elas
fonte