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

Название темы: [решено] Date -1
Показать сообщение отдельно

Ветеран


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

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


Sladkiy85,
Придется высчитывать високосность, количество дней в месяце. В общем скучная и нудная работа. За синтаксис не ругаться, батник древнющий:
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion

set d=%date:~0,2%
set m=%date:~3,2%
set y=%date:~6,4%

if %d:~0,1%==0 set d=%d:~1%
if %m:~0,1%==0 set m=%m:~1%

set /a feb=y%%4
if %feb%==0 (set feb=29) else (set feb=28)

set /a tok=m-1
if %tok%==0 set tok=12
for /f "tokens=%tok%" %%i in ("31 %feb% 31 30 31 30 31 31 30 31 30 31") do (
    set /a d-=1
    if !d!==0 (
        set d=%%i
        set m=%tok%
        if !m!==12 set /a y-=1
    )
)

set d=0%d%
set m=0%m%
set yesterday=%d:~-2%.%m:~-2%.%y%

echo %yesterday%
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:19, 25-09-2011 | #2

Название темы: [решено] Date -1