Назад | Перейти на главную страницу

Рекурсивный сценарий Windows CMD или BAT

Как я могу создать BAT или CMD, который будет перебирать дерево папок и запускать одну и ту же команду для каждого файла папки?

Например

myexe.exe C:\Documents and Settings\folder1\filename.txt
myexe.exe C:\Documents and Settings\folder2\filename.txt

Ноты:

Ваша помощь очень ценится или любые подсказки о том, с чего начать.

Адаптируйте этот командный файл к своим потребностям:

@echo off
cd "\program files"
for /f "usebackq delims=|" %%a in (`dir filename.txt /s/b`) do (
        echo %%a
        myexe "%%a"
)

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

Подход PowerShell:

Get-ChildItem -Recurse . FILENAME.TXT | foreach {
    $_
    & myexe $_
}