我有一个包含environnent变量名称的变量.我想评估这个值.例如:
:: TOTO_1_2 defined outside of batch file set varName="TOTO_1_2" echo %TOTO_1_2% :: Display env var echo %%varName%% :: Broken
我们的想法是将varName指向的env var的值传递给命令.
谢谢
如果要评估已评估的变量,则必须将其解析两次:
这样做有不同的可能性.以下是其中三个:
@echo off SET TOTO_1_2=hello set "varName=TOTO_1_2" echo 0: %TOTO_1_2% call echo 1: %%%varName%%% setlocal enabledelayedexpansion for %%i in (%varname%) do echo 2: !%%i! echo 3: !%varName%!