Windows 7 x64。
目录包含BAT
- msbuild
生成的文件。例如:
run-tests-in-autocad-2009-Gallio.bat
run-tests-in-autocad-2010-Gallio.bat
run-tests-in-autocad-2011-NUnit.bat
run-tests-in-autocad-2012-NUnit.bat
run-tests-in-autocad-2013-NUnit.bat
run-tests-in-autocad-2014-NUnit.bat
run-tests-in-autocad-2015-NUnit.bat
现在我需要创建BAT
- 文件(run-all-tests.bat
),它将调用每个文件。警告:通话顺序很重要!每个BAT
- 文件的名称都有年份值。呼叫必须按该值排序。我想写一个循环而不是硬指向每个BAT
- 文件名。严格的排序对我来说很难。
我该怎么做?
答案 0 :(得分:0)
如果文件存储在NTFS分区中,则按名称顺序枚举它们,因此您可以使用类似
的内容pushd "x:\where\files\are" && (
for %%a in (*.bat) do call "%%a"
popd
)
如果它不是NTFS并且文件没有按名称顺序枚举,我们需要强制命令,而不是直接请求文件列表,我们执行一个已排序的dir
命令并处理它的输出< / p>
pushd "x:\where\files\are" && (
for /f "delims=" %%a in ('dir /on /b /a-d *.bat') do call "%%a"
popd
)