如何将环境变量的值设置为 WINdows 批处理文件中的命令输出?

sla*_*pha 7 windows script batch-file

如何将环境变量设置为 Windows 批处理文件中的命令输出?该命令将返回大约 32 个字符的单个值(例如键入 myfile.txt)。

Aus*_*tin 5

尝试运行这些命令:

for /f "delims=" %a in ('mybatchfile.bat') do @set myenvvar=%a
echo %myenvvar%
Run Code Online (Sandbox Code Playgroud)


mek*_*ekb 5

暂时地:

for /f "delims=" %a in ('command to run') do @set example_environment_variable=%a
Run Code Online (Sandbox Code Playgroud)


永久:

for /f "delims=" %a in ('command to run') do @setx example_environment_variable=%a
Run Code Online (Sandbox Code Playgroud)

旁注,set只为这个命令进程/窗口setx设置它,但为整个用户/系统设置它。