批处理bat计算前n个月第一天的日期
来源:易贤网 阅读:1765 次 日期:2016-06-20 09:50:16
温馨提示:易贤网小编为您整理了“批处理bat计算前n个月第一天的日期”,方便广大网友查阅!

【方案一】bat + date.exe(gnu)

代码如下:

@echo off

rem 调用gnu for win32的date.exe

set gnudate=c:/test/date.exe

rem 指定月数

set monthsago=1

for /f %%a in ('%gnudate% -d %monthsago% months ago +%%y-%%m-01') do (

    set dstdate=%%a

    )

)

echo,%dstdate%

pause

【方案二】bat + vbs

代码如下:

@echo off

rem 指定月数

set monthsago=2

>%temp%/datecalculate.vbs echo strlastdate=dateadd(m, -%monthsago%, date)

>>%temp%/datecalculate.vbs echo strfmtdate=right(year(strlastdate),4) ^& right(0 ^& month(strlastdate),2) ^& 01

>>%temp%/datecalculate.vbs echo wscript.echo strfmtdate

for /f %%a in ('cscript /nologo %temp%/datecalculate.vbs') do (

    set dstdate=%%a

)

set dstdate=%dstdate:~0,4%-%dstdate:~4,2%-%dstdate:~6,2%

echo,%dstdate%

pause

更多信息请查看脚本栏目
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 新媒体/短视频平台 | 手机站点

版权所有:易贤网