Мне нужно подсчитать самый длинный путь в моей папке и поместить его в переменную. Потому что, когда я рекурсивно удаляю подпапки, мне приходится делать это несколько раз, чтобы проверить, есть ли другие пустые папки.
FOR /l %%y IN (0, 1, 3) DO (
FOR /r "%MyPath%" /d %%F IN (.) DO DIR /b "%%F" | findstr "^" > NUL || RD "%%F"
)
Я не знаю, есть ли параметр, который я могу использовать для удаления всех моих пустых подпапок, но все, что я нашел, это так, и мне нужно заменить 3 количеством подпапок в моем самом большом пути.
for /f "delims = " %%s in ('dir /s /b /ad "%sourcedir%"^|sort /r') do dir /b "%%s"|findstr "^" > NUL|| RD "%%s"
должен удалить ваши пустые каталоги.
Команда dir
выводит список каталогов в дереве с корнем sourcedir
. Это сортируется в обратном порядке, поэтому подкаталоги любого подкаталога обрабатываются перед подкаталогом.
Я бы выбрал тестовый каталог для... ну, тестирования...