【问题标题】:Ordered calling of the BAT-filesBAT文件的有序调用
【发布时间】:2015-05-31 17:16:02
【问题描述】:

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-file 的名称都有年份值。调用必须按该值排序。我想写一个循环而不是硬指向每个BAT-文件名。正确的排序对我来说很难。

我该怎么做?

【问题讨论】:

    标签: batch-file batch-processing


    【解决方案1】:

    如果文件存储在 NTFS 分区中,它们会按名称顺序枚举,因此您可以使用类似

    pushd "x:\where\files\are" && (
        for %%a in (*.bat) do call "%%a"
        popd
    )
    

    如果不是NTFS并且文件没有按名称顺序枚举,我们需要强制顺序,而不是直接请求文件列表,我们执行一个排序的dir命令并处理它的输出

    pushd "x:\where\files\are" && (
        for /f "delims=" %%a in ('dir /on /b /a-d *.bat') do call "%%a"
        popd
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-23
      • 1970-01-01
      • 2020-08-22
      • 2020-09-16
      • 1970-01-01
      相关资源
      最近更新 更多