我必须使用/引用将作为命令行参数传递的环境变量值。如下所示
set myvar=%1
echo Value of %myvar% is %%myvar%%
在这里%%myvar%%
我想引用该环境变量的值
该脚本的典型调用如下
script.bat JAVA_HOME
答案1
您不需要中间myvar
变量。如果您需要它,则只需替换以下%myvar%
内容即可%1
。
你需要两轮扩张。
选项 1 - 致电
@echo off
call echo %%%1%%
在第一个解析阶段
%%
扩展为%
%1
扩展为JAVA_HOME
%%
扩展为%
在 CALL 阶段,%JAVA_HOME%
扩展为您要查找的值。
选项 2——延迟扩张
@echo off
setlocal enableDelayedExpansion
echo !%1!
延迟扩展形式更容易阅读