构建命令并在批处理文件中执行它

时间:2011-08-12 19:57:18

标签: code-generation dos command-prompt

我有一个批处理文件,它输出一个命令列表,这些命令本身可以在命令行执行。

以下是我正在做的简化版本:

set %foldername%="c:\my_folder"
set %exename%="c:\my_utility.exe"

cd %foldername%
FOR /F "tokens=*" %%G IN ('dir *.xml /s /b /a:-d') DO @echo %exename% /x="%%G"

这基本上输出一个批处理文件。它看起来像这样:

c:\my_utility.exe /x="c:\my_folder\file1.xml"
c:\my_utility.exe /x="c:\my_folder\file2.xml"
c:\my_utility.exe /x="c:\my_folder\file3.xml"
c:\my_utility.exe /x="c:\my_folder\file4.xml"

我想执行这些命令。目前,我必须将输出重定向到批处理文件,然后运行它。有没有办法在dos提示符中说“执行我刚构建的命令”?

1 个答案:

答案 0 :(得分:1)

只需删除echo循环中的FOR

FOR /F "tokens=*" %%G IN ('dir *.xml /s /b /a:-d') DO %exename% /x="%%G"