如何用DOS命令取昨天的日期?

偶有代码可以取当前的日期:%date:~0,4%%date:~5,2%%date:~8,2%可是如果我想取昨天的日期该怎么写呢?望高手指教.... 偶有代码可以取当前的日期: %date:~0,4%%date:~5,2%%date:~8,2%
可是如果我想取昨天的日期该怎么写呢?
望高手指教.
展开
 我来答
BB石俊杰
2008-12-27 · TA获得超过1507个赞
知道大有可为答主
回答量:1395
采纳率:0%
帮助的人:1380万
展开全部
楼上的不是正解
3月1日的前一天是什么啊?得出来的是3月0日吗

::判断当前日期的前一天
::首先直接把天数减1天
::如果出来的是0天就把月减1天,天数是当月的最后一天。
::如果出来的是0月就把年减1年,月数是当年的最后一月。
@echo off&setlocal enabledelayedexpansion
set yyyy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set /a od=!dd!-1
if !od!==0 call :dd0
if !mm!==0 call :mm0
set yyyymmdd=!yyyy!年!mm!月!od!日
echo 昨天是:!yyyymmdd!
pause

:dd0
set /a mm=!mm!-1
for %%a in (1 3 5 7 8 10 12)do set %%add=31
set /a pddd=!yyyy!*10/4
set pd2d=!pddd:~-1,1!
set 2dd=28
if !pd2d!==0 set 2dd=29
for %%b in (4 6 9 11)do set %%bdd=30
set od=!%mm%dd!
goto :eof
:mm0
set /a yyyy=!yyyy!-1
set mm=12 && set od=31
goto :eof
喵星大魔王
2008-12-27 · TA获得超过1145个赞
知道小有建树答主
回答量:572
采纳率:0%
帮助的人:717万
展开全部
@echo off
set /a date=%date:~0,4%%date:~5,2%%date:~8,2%-1
echo %date%
pause.
另存为date.bat
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
168795174
2008-12-27 · TA获得超过1262个赞
知道答主
回答量:89
采纳率:0%
帮助的人:55.4万
展开全部
::判断当前日期的前一天
::首先直接把天数减1天
::如果出来的是0天就把月减1天,天数是当月的最后一天。
::如果出来的是0月就把年减1年,月数是当年的最后一月。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式