我有一个批处理文件,每天早上都会运行。它复制了一个文件,该文件的日期是前一天的日期。所以它会复制今天的文件,但会使用昨天的日期。文件夹名称为年份和月份。这个脚本的问题在于,每个月的第一天都会失败。这是因为它正在寻找当前的月份而非上一个月份。我该如何更改它,使得它可以在当前月份中工作,在新月的第一天时寻找前一个月份呢?
rem @echo off
set year=%date:~-4,4%
set month=%date:~-7,2%
set YearMonth=%year%%month%
echo %YearMonth%
echo d = DateAdd^("d", -1, Date^(^)^)>yesterday.vbs
echo wscript.echo DatePart^("yyyy", d^) ^& "/" ^& DatePart^("m", d^) ^& "/" ^& DatePart^("d", d^)>>yesterday.vbs
for /f "tokens=1-3 delims=/" %%I in ('cscript /nologo yesterday.vbs') do (
set Year=%%I
if %%J LEQ 9 (set Month=0%%J) else set Month=%%J
if %%K LEQ 9 (set Day=0%%K) else set Day=%%K
)
set Day=%Day%
del /q yesterday.vbs
echo %Day%
copy D:\OPMS\Zeag\CC\%YearMonth%\N\creasc.%Day% D:\OPMS\Zeag\CC\BizzExtract
thank you very much for your help