bat 取前一天日期(未处理润年)

echo off
set d=%date:~8,2%
set m=%date:~5,2%
set y=%date:~2,2%
echo %d%
echo %m%
echo ------------


if %m% == 01 (if %d%==01 (goto prey) else (set /a d=%d%-1))
if %m% == 02 (if %d%==01 (goto m2) else (set /a d=%d%-1))
if %m% == 03 (if %d%==01 (goto m3) else (set /a d=%d%-1))
if %m% == 04 (if %d%==01 (goto m4) else (set /a d=%d%-1))
if %m% == 05 (if %d%==01 (goto m5) else (set /a d=%d%-1))
if %m% == 06 (if %d%==01 (goto m6) else (set /a d=%d%-1))
if %m% == 07 (if %d%==01 (goto m7) else (set /a d=%d%-1))
if %m% == 08 (if %d%==01 (goto m8) else (set /a d=%d%-1))
if %m% == 09 (if %d%==01 (goto m9) else (set /a d=%d%-1))
if %m% == 10 (if %d%==01 (goto m10) else (set /a d=%d%-1))
if %m% == 11 (if %d%==01 (goto m11) else (set /a d=%d%-1))
if %m% == 12 (if %d%==01 (goto m12) else (set /a d=%d%-1))




:prey
set /a y=%y%-1
set cday=12-31-%y%
goto end


:m2
set cday=01-31-%y%
goto end


:m3
set cday=02-28-%y%
goto end


:m4
set cday=03-31-%y%
goto end


:m5
set cday=04-30-%y%
goto end


:m6
set cday=05-31-%y%
goto end


:m7
set cday=06-30-%y%
goto end


:m8
set cday=07-31-%y%
goto end


:m9
set cday=08-31-%y%
goto end


:m10
set cday=09-30-%y%
goto end


:m11
set cday=10-31-%y%
goto end


:m12
set cday=11-30-%y%
goto end

:end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值