DOS命令怎么实现昨天日期

就像vb中的date -1
2024-12-02 04:38:03
推荐回答(4个)
回答1:

'bs代码如下
a=date-1
msgbox a
'另存为:昨天日期.vbs 运行就可以

至于P处理我不会 ,冲网络上给你改了段代码过来了
@echo off
echo wscript.echo dateadd("d",-1,date) >%tmp%\tmp.vbs
for /f "tokens=1,2,3* delims=-" %%i in ('cscript /nologo %tmp%\tmp.vbs') do (
set "y=%%i"
set "m=%%j"
set "d=%%k"
)
set "nowdate=%y%%m%%d%"
echo %nowdate:~2%
pause

回答2:

::判断当前日期的前一天
::首先直接把天数减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

回答3:

可以输入systeminfo回车确认,然后会执行操作,稍后就可以查看系统详细参数。

回答4:

主要思路:
判断当前日期的前一天;
首先直接把天数减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