Sou um usuário não administrativo na máquina Windows 10. Eu estava tentando definir o caminho java e gradle para minha conta. Como usuário normal, não tenho acesso às variáveis de ambiente através do painel de controle. No unix, posso facilmente alterar o bashrc e definir o caminho para minha conta. No Windows, tentei definir as variáveis usando o comando setx ou set, mas elas não persistem para minha conta. Também tentei comandos do PowerShell, mas obtive erro de acesso negado. Então, minha pergunta é: se estou fazendo algo errado e se existe uma maneira de definir o caminho usando comandos ou no Windows, usuários não administradores não podem definir variáveis de caminho permanentemente.
setx /s machinename /u domain\username PATH "%PATH%;C:\dir1\dir2"
Procurei a outra resposta que funcionou para o Windows 7, mas quando tentei o comando abaixo do Windows 10, nada aconteceu:
"C:\Windows\system32\rundll32.exe" sysdm.cpl,EditEnvironmentVariables
Responder1
Pressione Win+I para abrir a caixa de diálogo de configurações do sistema. Na caixa de pesquisa digite "ambiente" Escolha "Editar variáveis de ambiente para sua conta"
Responder2
Mas... espere, você está tentando definir o caminho do ambiente do usuário em uma máquina remota usando isso...
setx /s [machinename]
... isso pode ser um problema. Mesmo com todo o PSRemotig, você deve ser um administrador local para fazer muitas coisas.
Quanto a fazer isso em sua máquina local. Você está dizendo que tentou definir o caminho dessa maneira também...
[Environment]::SetEnvironmentVariable("PATH", "C:\TestPath", "User")
...e não pegou?
Por último, se o seu alvo não estiver executando o Windows 10 Fall Creators Update, você não poderá fazer isso como um usuário normal. Este era um bug pré-Win10FCU.
Responder3
Existem duas variáveis PATH (e dois conjuntos de variáveis de ambiente, geralmente). Existem aqueles para o usuário atual e aqueles para a máquina atual. Eles são combinados para cada usuário que faz login.
Veja aquipara detalhes