res2001
Silver Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Dannnnia Как-то так: Код: @echo off set "workdir=.\10\" set "LocalDateTime=" for /f "tokens=* delims=" %%a in ('wmic.exe OS get LocalDateTime /value') do >nul set "%%a" if not defined LocalDateTime exit set "LocalDate=%LocalDateTime:~,8%" set /a "LocalTime=1%LocalDateTime:~8,4%-1000" for %%a in ("%workdir%*") do call:workfile "%%~a" goto:eof :workfile set "filetime=%~t1" set "filedate=%filetime:~6,4%%filetime:~3,2%%filetime:~,2%" set /a "filetime=1%filetime:~11,2%%filetime:~14,2%-1000" set /a "diff=%LocalTime:~8,4%-%filetime%" set /a "diffdate=%LocalDate:~,8%-%filedate%" if %diffdate% gtr 1 goto:_del if %diffdate% equ 1 if %diff% lss -2354 goto:_del if %diffdate% equ 0 if %diff% gtr 5 goto:_del exit /b :_del echo del /f/q "%~1" exit /b | Правильно инициализируй переменную workdir. Проверь экранный вывод, если все нормально, то в предпоследней строке убери echo. Но вообще проще было бы накропать макрос на VBS/JS, т.к. батники с датами не работают на прямую. | Всего записей: 2580 | Зарегистр. 11-04-2003 | Отправлено: 16:02 12-07-2012 | Исправлено: res2001, 16:12 12-07-2012 |
|