这篇文章主要介绍“怎么用批处理bat计算前N个月第一天的日期”,在日常操作中,相信很多人在怎么用批处理bat计算前N个月第一天的日期问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用批处理bat计算前N个月第一天的日期”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
【方案一】BAT + date.exe(GNU)
代码如下:
@echo offrem 调用GNU for Win32的date.exeset "gnuDate=C:/test/date.exe"rem 指定月数set MonthsAgo=1for /f %%a in ('%gnuDate% -d "%MonthsAgo% months ago" "+%%Y-%%m-01"') do ( set "DstDate=%%a" ))echo,%DstDate%pause
【方案二】BAT + VBS
代码如下:
@echo offrem 指定月数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 strFmtDatefor /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
到此,关于“怎么用批处理bat计算前N个月第一天的日期”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!