Como usar variáveis de ambiente do sistema global no Windows
Qualquer administrador do sistema que gaste um bom tempo no prompt de comando ou nos scripts em lote provavelmente está ciente das variáveis de ambiente incorporadas que o Windows oferece (por exemplo, Caminho, WinDir, Arquivos de Programas, Perfil do Usuário, etc.). Se você se encontrar usando um determinado valor repetidamente, não seria ótimo se você tivesse sua própria variável que você pode usar da mesma maneira que os valores embutidos??
Com alguns cliques, você pode criar e manter suas próprias variáveis de ambiente, que são globais no sistema e sobrevivem a reinicializações.
Criando uma Variável de Ambiente do Sistema Customizado
Criar uma nova variável de sistema global é bastante simples e é um desses recursos que se escondem à vista. Por favor, note que as imagens são para o Windows Server 2008, no entanto, o processo para a maioria das versões do Windows é quase idêntico, com apenas algumas das telas diferentes.
No Painel de Controle, abra a opção Sistema (alternativamente, você pode clicar com o botão direito do mouse em Meu Computador e selecionar Propriedades). Selecione o link "Configurações avançadas do sistema".
Na caixa de diálogo System Properties, clique em “Environment Variables”.
Na caixa de diálogo Variáveis de ambiente, clique no botão Novo abaixo da seção "Variáveis do sistema"..
Digite o nome da sua nova variável, bem como o valor e clique em OK.
Agora você deve ver sua nova variável listada na seção “Variáveis do sistema”. Clique em OK para aplicar as alterações.
Agora você pode acessar sua nova variável de ambiente do sistema como faria com qualquer outra. Você pode usá-lo a partir da linha de comando ou scripts em lote sem ter que defini-lo.
Usando a variável de ambiente personalizada
Como dito acima, sua variável de ambiente personalizada não é diferente de qualquer outra variável do sistema, pois você pode referenciá-la a partir da linha de comando e dentro dos scripts. Para um exemplo rápido, considere este script em lote:
@ ECHO OFF
TITLE Global Environment Variable Test
ECO.
Valor de notificação do sistema ECHOEmail
ECHO NotifyEmail =% NotifyEmail%
ECO.
SETLOCAL
ECHO Sobrescrevendo a variável global neste script…
SET [email protected]
ECHO NotifyEmail =% NotifyEmail%
ECO.
ECHO Saindo do script de substituição…
ENDLOCAL
ECO.
Valor de notificação do sistema ECHOEmail
ECHO NotifyEmail =% NotifyEmail%
ECO.
ECO.
ECO.
PAUSA
Quando executada, a saída é exatamente o que você esperaria:
Idéias de Uso
O poder real das variáveis de ambiente personalizadas entra quando você as usa em seus scripts. Em nosso exemplo, definimos uma variável chamada “NotifyEmail”, a qual poderíamos fazer referência em qualquer número de scripts sem precisar codificar o valor. Portanto, no caso de precisarmos alterar o endereço de e-mail, simplesmente atualizamos a variável do sistema e os scripts afetados usarão esse novo valor sem precisarmos atualizar cada script individualmente.
Isso não é apenas uma proteção de tempo, mas também protege contra a situação em que você se esquece de atualizar um script específico e um valor “morto” está sendo usado. Além disso, no caso de você precisar substituir uma variável do sistema em um script específico, você pode ver no nosso exemplo acima isso é totalmente suportado.
Aqui estão algumas idéias onde você pode aplicar variáveis de sistema no lugar de variáveis de escopo local:
- Endereços de email (como no nosso exemplo)
- Locais das pastas de backup
- Sites de URL e FTP
- Valores métricos e de limite
Outro ótimo recurso sobre o uso de variáveis do sistema é que você tem um único local onde pode editar ou visualizar seus valores de variáveis. Simplificando, você poderia aplicar atualizações a vários scripts editando as variáveis de ambiente em um único local.