Вот «неработающая» версия того, что я пытаюсь сделать:

rd d:\Video\*\Sample /s /q

У меня есть несколько подпапок с разными именами в папке "Видео", и в некоторых из них есть подпапка "Образец". Я хочу удалить папки с примерами и все в них.

Я очень ценю помощь. Спасибо!

1 ответ1

1
for /d /r "d:\Video" %a in (Sample) do if exist "%~fa\" echo rd "%~fa" /s /q 

Для каждой папки с указанной и ниже, если существует папка с именем Sample , удалите ее

Если вам не нужен / не нужен рекурсивный поиск, нужно только обрабатывать папки внутри d:\Video , затем

for /d %a in ("d:\Video\*") do if exist "%~fa\Sample\" echo rd "%~fa\Sample" /s /q

Для каждой папки в папке d:\Video , если она содержит папку с именем Sample удалите ее.

примечания:

  • Обе команды кодируются для выполнения из командной строки. Из пакетных файлов знаки процента должны быть удвоены

  • Команды rd включают префикс echo , поэтому команда не выполняется, а выводится только на консоль. Если вывод правильный, уберите echo

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