繁体   English   中英

在Batch中显示一个ask变量(变量中的变量)

[英]Display an asked variable in Batch (variable inside a variable)

有没有办法问用户哪个变量想要显示并显示它? 作为一个概念 ,它应该是这样的:

@echo off
set "VAR_1=THIS IS VAR_1"
set "VAR_2=THIS IS VAR_2"
set /p "VAR_TO_SHOW=Enter the variable to show: (VAR_1/VAR_2)"
echo %%VAR_TO_SHOW%%

因此,如果我们在“echo %% VAR_TO_SHOW %%”中,如果我们输入“VAR_1”,我希望看起来像这样:

echo %VAR_1%

所以输出将是“这是VAR_1”。 总结我所说的所有内容, 我想在变量中创建一个变量 我该怎么做?

我想要评论的另一件事是我已经尝试了“%%!VAR!%%”和“%% VAR %%”没有感叹号,但显示的是“%!VAR_TO_SHOW!%”或同样但没有(再次)惊叹号......

@echo off
set "VAR_1=THIS IS VAR_1"
set "VAR_2=THIS IS VAR_2"
set /p "VAR_TO_SHOW=Enter the variable to show: (VAR_1/VAR_2)"
call echo %%%VAR_TO_SHOW%%%

要么

@echo off
setlocal enableDelayedExpansion
set "VAR_1=THIS IS VAR_1"
set "VAR_2=THIS IS VAR_2"
set /p "VAR_TO_SHOW=Enter the variable to show: (VAR_1/VAR_2)"
echo !%VAR_TO_SHOW%!

第二种方式会更快。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM