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

Показать сообщение отдельно

Ветеран


Contributor


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

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


Удалить папки с определенным именем, например images, из всех профилей пользователей когда либо логинившихся на компьютер, со всем содержимым внутри. ИМХО, как я понимаю задачу, это можно сделать так:
Код: Выделить весь код
Уровни вложенности   1     2       3
Папки                admin\desktop\new_folder
Код: Выделить весь код
@Echo Off

Set "DelDir=images"

FOR /F "tokens=1,2 delims=\" %%i IN ("%Userprofile%") Do Set "DProf=%%i\%%j" 

FOR /F "usebackq delims=" %%i IN (`Dir "%DProf%\" /B /A:D-S-H`) DO (
	FOR /F "usebackq delims=" %%j IN (`Dir "%DProf%\%%i\" /B /A:D-S-H`) DO (
		If /I "%%j"=="%DelDir%" (
			Rd /S /Q "%DProf%\%%i\%%j"
		) Else (
			FOR /F "usebackq delims=" %%k IN (`Dir "%DProf%\%%i\%%j\" /B /A:D-S-H`) DO (
				If /I "%%k"=="%DelDir%" Rd /S /Q "%DProf%\%%i\%%j\%%k" 
			)
		)
	)
)

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 07-11-2016 в 20:08.


Отправлено: 19:51, 07-11-2016 | #6