对特定文件类型运行 bat 命令

对特定文件类型运行 bat 命令

我正在尝试执行一个 bat 文件中的命令,当我在命令中指定目标文件时,该文件运行正常(例如:“c:\my work\month.stats.txt”)。

命令行结构就是这样的

 xxxxxxx.exe [command_parameter] c:\my work\month.stats.txt

我想让它对某个文件夹(例如:“c:\my work”文件夹)中存在的每个“.txt”文件自动运行。

有没有办法做到这一点?

谢谢

答案1

要将可执行命令应用于所有文本文件,请使用For /R循环。在该文件夹中打开命令提示符并输入:

For /R %Y in (*.txt) do (abc.exe %Y)

或者,如果您想在另一个文件夹中应用该命令,请在该命令中添加文件夹路径:

For /R "C:\path\folder" %Y in (*.txt) do (abc.exe %Y)

以下是该命令的详细信息:

  • 句法:

FOR /R [[drive:]path] %%parameter IN (set) DO command
  • 关键驱动:

    • 路径:文件所在的文件夹树。
    • set :一组或多份文件。必须使用通配符。如果 (set) 是句点字符 (.),则 FOR 将循环遍历每个文件夹。
    • command:要执行的命令,包括任何命令行参数。
    • %%parameter :可替换参数:在批处理文件中使用 %%G(在命令行上为 %G)

来源:ss64:对于 /R

相关内容