Windows:使用通配符打印环境变量?

时间:2016-02-25 18:32:16

标签: windows batch-file

我有以下环境变量:OUTPUT_FOR_TEST1OUTPUT_FOR_TEST2OUTPUT_FOR_TEST3等。 这些变量也是在批处理脚本中动态构建的,基本上是OUTPUT_FOR_TEST1TEST2TEST3附加,因为我不知道前面是什么{{1 },TEST1TEST2

在我的批处理文件的末尾,我想回显这些变量。但由于这些变量是动态创建的,我如何打印它们呢?我可以使用像TEST3这样的外卡吗?我不这么认为。有什么建议吗?

我知道power shell可以做到这一点,但我更愿意坚持批量解决方案,如果存在的话。

另外要说清楚:我想打印的值不是整个环境变量描述,如OUTPUT_FOR_TEST1 = TEST1_RESULT

我可以使用echo %OUTPUT_FOR_*%,解析set OUTPUT_FOR_ >> temp.txt来获取值,但这样做更有效。

1 个答案:

答案 0 :(得分:1)

set output_for

这将打印名称以output_for开头的所有变量。 然后你可以使用(从命令行):

for /f "tokens=2* delims==" %# in ('set output_for') do @echo %#

来自批次:

for /f "tokens=2* delims==" %%# in ('set output_for') do @echo %%#

(for /f "tokens=2* delims==" %%# in ('set output_for') do @echo %%#)>>output