批處理bat計算前N個月第一天的日期
來源:易賢網 閱讀:1198 次 日期:2014-10-08 13:21:14
溫馨提示:易賢網小編為您整理了“批處理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

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網