在我目前正在处理的批处理文件上,遇到了一个小问题。我有一个名为Dimensions(number from 1-5, defined in a for /l loop).txt
的文件,其中包含%b1%%b2%%b3%%b4%%b5%
。我希望能够echo
通过值%b1%%b2%%b3%%b4%%b5%
的值,例如string1
,它是通过set /p string1=<Dimensions1.txt
设置的。批处理 - 在另一个变量中回显变量的值?
换句话说,我希望能够使用echo %string1%
(它由5个变量组成),并让这些变量的值回显。如果这没有意义,这是我的代码示例;
for /l %%g in (1,1,%height%) do (
set /p line%%g=<Dimensions%%g.txt
)
:Nextstep
echo Use WASD to move over the map, and select tiles.
for /l %%h in (1,1,%height%) do (
pause
echo %line1%
echo %%line%%h%%
)
虽然Dimensions1.txt(其应被设置成%line1%
第一)看起来像这样;
%b1%%b2%%b3%%b4%%b5%
在echo %%line%%h%%
中%%的应取消海誓山盟出,不含%%h
这应该是1
。渴望成为; %line1%
(正如我所说,它是%b1%%b2% etc...
。),然而打印它们的值。
现在我所得到的是%line1%
。我尝试了其他方法,例如,如有人对我最后(有点类似)的问题发表评论,请执行set percent=%%
(与setlocal EnableDelayedExpansions
)并使用!percent!在外面,但是,两者都没有给我期望的输出。
对不起,如果我以混乱的方式措辞,我希望你能帮上忙。
在先进的感谢,
似乎我错了使用'!',更别说不使用Call了。这就像一个魅力,非常感谢你! – Destrotant