:: using only Notepad to save and retrieve A, B, and C values:
@echo off
set A=2
set B=5
set C=1
echo/%A%-%B%-%C%>.\abc.txt
:: lendo o bloco de notas (abc.txt) e recuperando os valores de A,B e C
for /f "tokens=1,2,3 delims=-" %%a in ('type .\abc.txt') do (
set A=%%a
set B=%%b
set C=%%c
echo/%A% %B% %C%
)
Using the Windows registry via setx and / or reg add / reg query / reg delete
:: escreva suas variáveis concatenando os valores numa chave do registro do windows
:: usando o comando setx ou reg add, de maneira que não seja necessário chamar outro
:: arquivo, nem saber o caminho dele. O setx registra variáveis para uso "global",
:: porém só "seta" efetivamente este valor do próximo boot, daí entra o artifício de
:: ler os valores não numa variável, mas sim numa entrada de registro via reg query e
:: apagando quando não mais for necessário.
@echo off
set A=2
set B=5
set C=1
:: para escrever via setx:
setx a-b-c %A%-%B%-%C%
:: ou ecreva direto no registro sem usar o setx via reg add:
set a-b-c=%A%-%B%-%C%&
reg add HKCU\Environment /v a-b-c /d "%A%-%B%-%C%" /f 2
:: para ler o registro em outro tempo e recuperar os valores de %A%-%B%-%C%:
for /f "tokens=3 delims=^ " %%i in ('reg query HKCU\Environment ^| findstr /i /c:"a-b-c"') do set a-b-c=%%i
for /f "tokens=1,2,3 delims=-" %%a in ('echo/%%a-b-c%%') do (
set A=%%a
set B=%%b
set C=%%c
echo/%A% %B% %C%
)
:: ------- quando não for mais necessário usar a chave, você pode remover a entrada:
reg delete HKCU\Environment /v a-b-c /f 2>nul >nul