bat脚本获取前天日期
时间: 2024-01-30 22:47:05 浏览: 143
利用shell获取指定日期前N天的日期
以下是获取前天日期的bat脚本:
```
@echo off
setlocal enabledelayedexpansion
set "today=%date%"
set "dd=%today:~0,2%"
set "mm=%today:~3,2%"
set "yyyy=%today:~6,4%"
:: Subtract 2 days from current date
set /a dd-=2
if !dd! leq 0 (
set /a mm-=1
if !mm! leq 0 (
set /a yyyy-=1
set "mm=12"
)
if !mm! equ 2 (
set /a leap=yyyy %% 4
if !leap! equ 0 (
set "days=29"
) else (
set "days=28"
)
) else if !mm! equ 4 (
set "days=30"
) else if !mm! equ 6 (
set "days=30"
) else if !mm! equ 9 (
set "days=30"
) else if !mm! equ 11 (
set "days=30"
) else (
set "days=31"
)
set /a dd+=!days!
)
if !mm! lss 10 set "mm=0!mm!"
if !dd! lss 10 set "dd=0!dd!"
set "before_yesterday=!yyyy!!mm!!dd!"
echo %before_yesterday%
```
该脚本首先获取当前日期并将其分解为日、月和年。然后,它减去两天以获取前天的日期。如果减去两天后的日期是上个月或上一年的日期,则需要进行一些处理。最后,它将前天的日期组合成一个字符串并将其打印出来。
阅读全文