Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   чтобы батник автоматически удалял бы все подкаталоги, размер которых (http://forum.oszone.net/showthread.php?t=223013)

makc2364 15-12-2011 18:52 1815982

чтобы батник автоматически удалял бы все подкаталоги, размер которых
 
помогите пожалуйста сделать так, чтобы батник автоматически удалял бы в каталогах 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 1817869

Не так. Не будет работать по таким причинам:
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.


Время: 11:19.

Время: 11:19.
© OSzone.net 2001-