miércoles, 26 de julio de 2017

batch msdos dia anterior fecha de hoy dia de ayer

set ano=%date:~6,4%
set mes=%date:~3,2%
set dia=%date:~0,2%
set realizado=0

if %dia% == 01 (
  
    if %mes% == 01 (
        set dia=31
        set mes=12
        set /A ano=ano-1
        set realizado=1
    )
  
    if %mes% == 02 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )
  
    if %mes% == 03 (
        set dia=28
        set /A mes=mes-1
        set realizado=1      
      
        if %ano% == 2020 set dia=29
        if %ano% == 2024 set dia=29
        if %ano% == 2028 set dia=29
        if %ano% == 2032 set dia=29
        if %ano% == 2036 set dia=29
        if %ano% == 2040 set dia=29
        if %ano% == 2044 set dia=29
        if %ano% == 2048 set dia=29
    )
  
    if %mes% == 04 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 05 (
        set dia=30
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 06 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 07 (
        set dia=30
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 08 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 09 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 10 (
        set dia=30
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 11 (
        set dia=31
        set /A mes=mes-1
        set realizado=1      
    )

    if %mes% == 12 (
        set dia=30
        set /A mes=mes-1
        set realizado=1      
    )
  
)


if %realizado% == 0 set /A dia=dia-1

cls
echo %dia%
echo %mes%
echo %ano%


No hay comentarios:

Publicar un comentario