回声不回声for循环

时间:2018-09-05 14:26:41

标签: windows loops batch-file for-loop cmd

我有一个简单的蝙蝠脚本,如下所示:

for %%f in (DW_*.csv) do (
 echo f is.....: %%f
 set nam=%%f
 echo nam is ...: %nam%
)

问题是我正在调用的变量被设置为nam IS,但未正确回显(似乎实际上并没有被设置)

有人可以帮助我吗?

ps:我已经尝试过启用延迟扩展,但是仍然没有得到预期的结果(请参见红色箭头)

enter image description here

好的,解决方案确实与延迟扩展有关。由于这似乎是一个常见问题,因此我将保留此半重复的帖子,并留有以下注意事项:延迟扩展使用此语法引用!variables!不是这个%syntax%

因此此代码有效并提供了预期的结果:

setlocal enabledelayedexpansion
for %%f in (DW_*.csv) do (
 echo f is.....: %%f
 set nam=%%f
 echo nam is ...: !nam!
)

enter image description here

0 个答案:

没有答案