Чтобы понять используемые команды и то, как они работают, откройте окно командной строки, выполните там следующие команды и полностью прочитайте все страницы справки, отображаемые для каждой команды.

е удалось написать оценочный пакетный файл, и я был бы признателен за помощь.

Допустим, у меня есть исполняемый файл в D: \ Test \ с именем script.exe. Для выполнения этого script.exe требуется дополнительный аргумент .bin-файлов (например, bin01.bin, bin02.bin).

Поэтому это будет выглядеть так: script.exe -i bin01.bin, script.exe -i bin01

Я хочу, чтобы скрипт выполнялся со всеми .bin-файлами из всех подпапок

D: \ Test \ script.exe
D: \ Test \ Folder01 \ bin01.bin
D: \ Test \ Folder01 \ bin02.bin
D: \ Test \ Folder02 \ bin01.bin
D: \ Test \ Folder03 \ bin01.bin

кто-нибудь может помочь мне здесь? Заранее большое спасибо.

 Jeff Zeitlin04 дек. 2017 г., 18:45
Дав вам стандартную информацию о том, как задавать хорошие вопросы, я укажу вам SS64.com, которыйотлично справочный сайт для batch, powershell, vbscript и многих других. В частности, я думаю, вы найдете полезную информацию оFOR когда используется для обработки вывода другой команды а такжеDIRв частности, варианты рекурсии и удаления верхних и нижних колонтитулов.
 Jeff Zeitlin04 дек. 2017 г., 18:40
Что вы пробовали, и как это не удалось? В идеале вы должны предоставитьМинимальный, полный и проверяемый пример о том, что вы пробовали, и включите конкретную информацию о том, как это не удалось, с сообщениями об ошибках и / или ошибочным выводом.Переполнение стека не является службой написания кода; лучшие вопросы - это те, которые предоставляют полезную информацию, чтобы те, кто отвечает, могли помочь вам придумать собственный правильный ответ. ВидетьКак спросить.

Ответы на вопрос(1)

Решение Вопроса

for /R "D:\Test" %I in (*.bin) do @D:\Test\script.exe -i "%I"

И та же самая командная строка для использования в командном файле:

@for /R "D:\Test" %%I in (*.bin) do @D:\Test\script.exe -i "%%I"

КомандаЗА поискрекурсивный в каталогеD:\Test и все подкаталоги для файлов, соответствующих шаблону подстановки*.bin.

Каждому найденному файлу присваивается полный путь к переменной цикла с учетом регистраI.

ЗА выполняет для каждого файла исполняемый файлD:\Test\script.exe с первым аргументом-i а второй аргумент - это имя найденного файла с полным путем, заключенным в двойные кавычки, для работы с любым именем файла * .bin, даже если оно содержит пробел или один из следующих символов:&()[]{}^=;!'+,`~.

@ в начале всегоЗА командная строка просто говорит интерпретатор команд Windowscmd.exe не выводить командную строку после предварительной обработки перед выполнением в окне консоли, как по умолчанию.

@ в началеD:\Test\script.exe избегает вывода этой команды на консоль, выполняемой на каждой итерации цикла.

Чаще всего эхо командной строки перед выполнением отключается в начале командного файла с@echo off как это видно ниже.

@echo off
for /R "D:\Test" %%I in (*.bin) do D:\Test\script.exe -i "%%I"

Чтобы понять используемые команды и то, как они работают, откройте окно командной строки, выполните там следующие команды и полностью прочитайте все страницы справки, отображаемые для каждой команды.

echo /?for /?

Ваш ответ на вопрос