循环文件批处理文件

时间:2014-02-12 17:38:21

标签: file loops batch-file for-loop echo

需要此列出所有没有路径信息的文件名。回声中没有任何内容。有任何想法吗?请参阅下面的代码。

For %%A in ("C:\temp\*.dmo") do (
set name=%%~nxA
echo %name%
)
Pause

3 个答案:

答案 0 :(得分:0)

你想要setlocal enabledelayedexpansion。否则,变量仅被评估一次。

答案 1 :(得分:0)

如果在循环内部设置变量,则必须使用enabledelayedexpansion来访问它。

setlocal enabledelayedexpansion
For %%A in ("C:\temp\*.dmo") do (
   set name=%%~nxA
echo !name!
)
Pause

或者只是:

For %%A in ("C:\temp\*.dmo") do (
  echo %%~nxa
)
Pause

答案 2 :(得分:0)

For %%A in ("C:\temp\*.dmo") do (
    set name=%%~nxA
    call echo %%name%%
)
Pause

叹息。去图。