Показать полную графическую версию : чтобы батник автоматически удалял бы все подкаталоги, размер которых
makc2364
15-12-2011, 18:52
помогите пожалуйста сделать так, чтобы батник автоматически удалял бы в каталогах D:\profiies и D:\HomeDirs все подкаталоги, размер которых превышает 20 Мбайт.
я тут набросал, но не знаю так ли, поправьте ес че:
@Echo off
set Size=20000
set Files=D:\profiies
set Files=D:\HomeDirs
rem
for %%F in (%Files%) do if /i %%~zF EQU %Size% del /f %%F
Dragokas
19-12-2011, 12:09
Не так. Не будет работать по таким причинам:
1) "set Files=D:\HomeDirs" заменяет значение предыдущей команды.
2) "~z" работает только с файлами. Размер папок можно посмотреть в теме: http://forum.oszone.net/post-1603549.html
Мне понравился вариант от gora (пост № 3).
3) Конструкция "for %%F in (%Files%)" будет перечислять разделенные пробелом или табуляцией данные из файла %Files% (т.е. фактически ничего не выдаст (файла с именем "D:\HomeDirs" нет). Для получения данных из переменной используется ("%Files%") - скобки и кавычки.
4) Размер лучше указать в байтах: "set /a Size = 20*1024*1024".
5) EQU - это равно, в Вашем случае GTR.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.