Другие языки программирования и технологии

Нужен bat-файл для удаления файлов по дате старше 2 дня на Win2003. Изучать команды нет времени

Не согласен с предыдущим оратором: данное условие программировать - задача нетривиальная. Может быть, лучше применить язык более развитый? Например, VBS.
В принципе, я могу это и на BAT написать, но это долго и сейчас времени нет. Может быть, завтра на работе выкрою минутку (оно может и мне там пригодиться когда-нибудь) . В этом случае пришлю почтой.

Впрочем, нашёл свою старую наработку и переделал под эту задачу:
@echo off
SetLocal EnableDelayedExpansion
set _dt=!DATE!
rem set _dt=21.07.2011
set _dt=%_dt:~-10%

set _day=%_dt:~0,2%
set mon=%_dt:~3,2%
set year=%_dt:~6,4%

if %_day% LSS 10 set _day=%_day:~1%
if %mon% LSS 10 set mon=%mon:~1%

set /A _day-=3

if %_day%==0 (
set /A mon-=1
if! mon!==0 (
set mon=12
set /A year-=1
)

if! mon!==2 (
set /A ost=%year% %% 4
if! ost!==0 (set _day=29) else (set _day=28)
echo ost=!ost!
) else (
set _day=31
for %%m in (4 6 9 11) do if! mon!==%%m set _day=30
)

)

if %_day% LSS 10 set _day=0%_day%
if %mon% LSS 10 set mon=0%mon%

set old=%year%-%mon%-%_day%
echo %old%

for %%f in (*.*) do (
if not %%f==%0 (
set dat=_%%~tf
set dat=!dat:~7,4!-!dat:~4,2!-!dat:~1,2!
if! dat! LEQ %old% (
del %%f
)
)
)
Ануар Бежибаев
Ануар Бежибаев
14 270
Лучший ответ
халява однако
там учить то нечего - /help набери - всё там есть
надо всего 2 команды то написать и 1 условие
бЫ-ЛОБЫ ЗДОРОВО НА ПРОТИВ КАЖДОЙ СТРОКИ СДЕЛАТЬ КОМЕНТАРИИ !!