Я новичок в пакетных файлах и мне нужна помощь. Я хочу сделать следующее.

Я создал пакетный файл, который ищет папку "Записи" в файловой системе и записывает результаты в текстовый файл (results.txt). После этого он ищет строку "Каталог" в результатах. Я хочу затем объединить каждую строку из findstr (каждый путь) с командой выполнения инструмента, который я использую.

batchfile.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 ответ1

1

Я хочу, чтобы каждая строка этого вывода была объединена с моей командой выполнения

Используйте следующий пакетный файл:

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

Дальнейшее чтение

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .