如何在使用setx之​​后检索值?

我需要存储一个值(时间戳),稍后在batch file中检索它。 所以我search了如何存储一个持久variables,并find了答案的答案。

我这样使用它:

C:\tmp>setx TIME_VAR %time% SUCCESS: Specified value was saved. 

但是,当我试图用回声打印它不在那里:

 C:\tmp>echo TIME_VAR TIME_VAR C:\tmp>echo %TIME_VAR% %TIME_VAR% 

我如何检索我的储值?

从doc( setx /?

因为SETX将变量写入注册表中的主环境,编辑将只在打开新的命令窗口时生效 – 它们不会影响当前的CMD或PowerShell会话。

 setx _here_ %CD%\170901017-01 for /f "tokens=3 delims=^ " %%i in ('reg query HKCU\Environment ^| findstr /i /c:"_here"') do ( set _my_set_x_var_=%%i set _here_=%%i ) echo/ local and next session = = = = echo/ %_my_set_x_var_% echo/ local and next session = = = = echo/ %_here_% :eof 

结果:

  local and next session = = = = C:\Users\admin\Desktop\Res_Folder_7z\test\170901017-01 local and next session = = = = C:\Users\admin\Desktop\Res_Folder_7z\test\170901017-01 

在同一届会议上,也在下一届