我无法获得循环变量

时间:2014-05-16 20:09:33

标签: batch-file

我正在尝试编写一个简单的批处理文件

脚本获取文件“dump”的namefile,我拆分了字符串,但是我无法显示变量!!

for /r %%a in (dump\*) do (
        set file=%%a
        for /f %%i in ("%%a") do (
        for /F "tokens=1 delims=-"  %%d IN ("%%~ni") do set db=%%d          
    )
 echo %db%
)
pause

有什么想法吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

尝试设置setlocal ENABLEDELAYEDEXPANSION并使用感叹号交换var,请参阅下文:

setlocal ENABLEDELAYEDEXPANSION
for /r %%a in (dump\*) do (
        set file=%%a
        for /f %%i in ("%%a") do (
        for /F "tokens=1 delims=-"  %%d IN ("%%~ni") do set db=%%d          
    )
 echo !db!
)
pause