Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Удаление пустых каталогов и подкаталогов через CMD

Ответить
Настройки темы
CMD/BAT - [решено] Удаление пустых каталогов и подкаталогов через CMD

Новый участник


Сообщения: 42
Благодарности: 2

Профиль | Отправить PM | Цитировать


Всем привет! Хотелось бы в определенном каталоге удалить все пустые каталоги и подкаталоги. данная команда
Код: Выделить весь код
for /d %%i in ("D:\1\*") do rd /q "%%i" 2>nul
вычищает пустые каталоги на фиксированной глубине вложения папок. мне же необходимо наоборот, на не фиксированной глубине.

Отправлено: 09:40, 10-07-2011

 

Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Andzzzz,
Код: Выделить весь код
for /f "tokens=*" %%i in (' dir /b /s /ad "D:\1\" ') do 2>nul rd /q "%%i"

for /r "D:\1" /d %%i in (*) do 2>nul rd /q "%%i"

Отправлено: 10:11, 10-07-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 42
Благодарности: 2

Профиль | Отправить PM | Цитировать


Foreigner,
все замечательно, но одно неудобное НО. в папке D:\1\ друг в друга вложены 6 пустых каталогов, при единичном запуске данного кода
Код: Выделить весь код
for /f "tokens=*" %%i in (' dir /b /s /ad "D:\1\" ') do 2>nul rd /q "%%i"  
for /r "D:\1" /d %%i in (*) do 2>nul rd /q "%%i"
удаляется только два пустых каталога. т.е. чтобы мне удалить все шесть пустых каталога, придется запускать код 3 раза. Немного неудобно.

Отправлено: 10:22, 10-07-2011 | #3


Ветеран


Сообщения: 1758
Благодарности: 966

Профиль | Цитировать


Andzzzz,
Цитата:
удаляется только два пустых каталога.
Это просто два способа пройтись по вложенным каталогам.
Попробуй такой вариант:
Код: Выделить весь код
@echo off

:again
for /f "tokens=*" %%i in (' dir /b /s /ad "D:\1" ') do 2>nul rd /q "%%i" && goto:again
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:43, 10-07-2011 | #4


Новый участник


Сообщения: 42
Благодарности: 2

Профиль | Отправить PM | Цитировать


все отлично, спасибо за оперативную помощь!

Отправлено: 10:54, 10-07-2011 | #5


Пользователь


Сообщения: 55
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Andzzzz:
for /d %%i in ("D:\1\*") do rd /q "%%i" 2>nul »
А как можно докрутить этот скрипт, что бы он при проверке условия не опускался ниже указанного каталога, и условием являлось не наличие/отсутствие файлов, а размер каталога?

Отправлено: 16:00, 29-08-2013 | #6



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Удаление пустых каталогов и подкаталогов через CMD

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удаление пустых каталогов через CMD toro Скриптовые языки администрирования Windows 11 08-12-2022 12:35
VBS/WSH/JS - [решено] Удаление пустых папок VBasic forsem Скриптовые языки администрирования Windows 4 13-05-2010 09:56
CMD/BAT - Удаление в каталоге всех подкаталогов, размер которых превышает 20 Мбайт krisnv Скриптовые языки администрирования Windows 3 23-03-2010 19:42
CMD/BAT - Удаление пустых каталогов rosalin Скриптовые языки администрирования Windows 1 12-05-2009 15:05
Служебные - [решено] Удаление файлов из меню Пуск через cmd Vdm17 Наборы обновлений для Windows XP/2003/Windows 7 19 24-02-2009 18:51




 
Переход