我想创建与文本文件中存在的目录同名的目录。我想通过读取文本文件中的每个名称来创建单独的目录。
基本上,文本文件是所有目录名称的转储。
dir /b /o:n /ad %MYSRC%\* > ToolNames.txt
for %%x in ('ToolNames.txt') do (
set ToolName=%%x
mkdir %ToolName%
)
但上面的代码并没有让我得到理想的结果。请帮忙
答案 0 :(得分:0)
for %%x in (ToolNames.txt) do (
ECHO mkdir %%x
)
请参阅关于delayedexpansion
的SO上的无休止的文章,这将解释原始代码失败的原因。
在块语句(a parenthesised series of statements)
中,解析整个块并执行然后。块中的任何%var%
将在解析块时被该变量的值替换 - 在块执行之前 - 同样的事情适用于{{1 }}
因此,FOR ... DO (block)
将在遇到IF (something) else (somethingelse)
时使用%variables%
的值执行。