Eu quero adicionar meu endereço IP ao ambiente do sistema / usuário em um arquivo bat.
curl http://httpbin.org/ip
Esta é a saída:
{
"origin": "1.2.3.4"
}
Use o seguinte arquivo de lote (test.cmd):
rem @echo off
setlocal enableDelayedExpansion
for /f "usebackq skip=1 tokens=2" %%i in ('curl http://httpbin.org/ip') do (
setx ip %%~i
goto :done
)
:done
endlocal
Notas:
-
skip=1
é usado para pular a primeira linha{
. -
goto :done
é usado para pular a última linha}
. -
~
é usado para remover as aspas do endereço IP.
Leitura Adicional
- Um índice A-Z da linha de comando do Windows CMD - Uma excelente referência para todas as coisas relacionadas à linha do Windows cmd.
- para / f - Comando Loop contra os resultados de outro comando.
- parâmetros - Um argumento de linha de comando (ou parâmetro) é qualquer valor passado para um script em lote.
- setx - Defina as variáveis de ambiente permanentemente, SETX pode ser usado para definir as variáveis de ambiente para a máquina (HKLM) ou usuário atualmente conectado (HKCU).