批处理文件:在文件系统中搜索特定文件夹,并对每个找到的文件夹执行命令

批处理文件:在文件系统中搜索特定文件夹,并对每个找到的文件夹执行命令

I am new to batch files and need some help. I want to do the following.

我创建了一个批处理文件,它在文件系统中查找文件夹“Recordings”,并将结果写入文本文件 (results.txt)。之后,它在结果中查找字符串“Directory”。然后我想将 findstr 中的每一行 (每个路径) 与我正在使用的工具的执行命令合并。

批处理文件.bat:

@echo off
dir /S Recordings > C:\testing\results.txt
findstr Directory C:\testing\results.txt
PAUSE

输出如下所示:

C:\testing>batchfile.bat
 Directory of C:\testing\Scenarios\Default
 Directory of C:\testing\Scenarios\test1
Press any key to continue . . .

现在我想将此输出的每一行与我的执行命令合并:

tool.exe -parameter C:\testing\Scenarios\Default\Recordings
tool.exe -parameter C:\testing\Scenarios\test1\Recordings

答案1

我希望此输出的每一行都与我的执行命令合并

使用以下批处理文件:

@echo off
setlocal
for /f "usebackq" %%i in (`dir /a:d /b /s ^| findstr "Recordings"`) do (
  tool.exe -parameter %%i
  )
endlocal

进一步阅读

相关内容