Як запустити команду run у всіх підкаталогах у пакетному файлі?
Ви можете використовувати for /r
для цього.
Використовуйте наступний пакетний файл:
for /r "starting_directory" %%a in (.) do (
pushd %%a
if exist icon.ico (
attrib -s -h -r desktop.ini
echo f | xcopy /h /y "%~dp0desktop.ini.txt" desktop.ini
attrib +s +h +a desktop.ini
)
popd
)
for / r - прокручування файлів (повторне використання папок)
Синтаксис
FOR /R [[drive:]path] %%parameter IN (set) DO command
Ключ
drive:path
: Дерево папок, де розташовані файли.
set
: Набір одного або декількох файлів. Необхідно використовувати символи підстановки. Якщо (set) - символ періоду (.), То FOR проходитиме через кожну папку.
command
: Команди, які потрібно виконати, включаючи будь-які параметри командного рядка.
Параметр %%`: змінний параметр: у пакетному файлі використовуйте %% G (у командному рядку% G)
Джерело для / r - прокручування файлів (Recurse subfold).
Подальше читання