在批处理脚本标签中使用变量

use variables in batch script labels

我可以使用变量来引用标签,但我似乎无法创建带有变量的标签。

有效的脚本(成功打印“有效”):

@echo off
set var=test
goto :label_%var%
echo did not work
pause
EXIT

:label_test
echo worked
pause

不起作用的脚本(当您 运行 它时崩溃):

@echo off
set var=test
goto :label_%var%
echo did not work
pause
EXIT

:label_%var%
echo worked
pause

关于如何让 :label_%var% 工作有什么建议吗?

转义 %。在批处理文件中 %s 通过 %%

转义
@echo off
set var=test
goto :label_%%var%%
echo did not work
pause
EXIT

:label_%var%
echo worked
pause

输出

worked
Press any key to continue . . .