我正在尝试获取开始日期和结束日期。开始和结束数据应该相隔1整天。我有问题从开始日期或结束日期减去或添加。我该怎么做呢?我尝试过-%1%
和+%1%
。
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set /a y=%dt:~0,4%
set /a m=1%dt:~4,2%
set /a d=1%dt:~6,2%
set subdate=%y%%m:~-2%%d:~-2%
SET START_DATE= %subdate:~0,4%/%subdate:~4,2%/%subdate:~6,2% 00:00 AM
SET END_DATE = %dt:~0,4%/%dt:~4,2%/%dt:~6,2%+%1% 00:00 AM
echo %start_date%
echo %end_date%
echo done
答案 0 :(得分:2)
这是一种将开始日期定义为昨天和结束日期为今天的方法。如果我误解了你的想法,请说出来。
FOR /F "usebackq tokens=*" %%t IN (`powershell -NoProfile -Command "(Get-Date).AddDays(-1).ToString('yyyy/MM/dd HH:MM:ss')"`) DO (SET "START_DATE=%%t")
FOR /F "usebackq tokens=*" %%t IN (`powershell -NoProfile -Command "(Get-Date).ToString('yyyy/MM/dd HH:MM:ss')"`) DO (SET "END_DATE=%%t")
echo %START_DATE%
echo %END_DATE%