Se eu iniciar uma nova sessão de shell do Windows e digite:
env
Eu vejo muitas variáveis de ambiente definidas. Desejo depurar a execução de um programa de linha de comando removendo todas as variáveis de ambiente da sessão atual do shell.
Eu poderia ir embora um por um com a seguinte abordagem:
SET FOO=
SET BAR=
SET ... ... ...
No entanto, existe uma maneira simples de limpar todos de uma só vez?
env
? Eu nunca ouvi falar disso antes, e não funciona aqui.Respostas:
Você pode escrever isso em um arquivo em lotes:
Basicamente, executa cada variável de ambiente, faz o backup em um arquivo em lotes (
backupenv.bat
) e depois limpa cada variável. Para restaurá-los, você pode executar obackupenv.bat
arquivo.fonte
Se você deseja limpar apenas todas as variáveis de ambiente do arquivo em lotes, fica ainda mais fácil.
A linha final gera todas as variáveis de ambiente, que não devem ser nenhuma, confirmando o código trabalhado.
Como
Setlocal
é usado, todas as alterações no ambiente são perdidas após o término do lote. Portanto, se você digitarSet
após o lote, verá que todas as variáveis de ambiente ainda estão lá, não sendo necessário armazená-lo em um arquivo de backup.fonte