Это гибридный vb / batch скрипт. Это правильный способ получить дату -1
или любое количество дней, которое вы хотите:
@echo off
set day=-1
echo >"%temp%\%~n0.vbs" s=DateAdd("d",%day%,now) : d=weekday(s)
echo>>"%temp%\%~n0.vbs" WScript.Echo year(s)^& right(100+month(s),2)^& right(100+day(s),2)
for /f %%a in ('cscript /nologo "%temp%\%~n0.vbs"') do set "result=%%a"
del "%temp%\*%~n0.vbs"
set "yyyy=%result:~0,4%"
set "mm=%result:~4,2%"
set "dd=%result:~6,2%"
set "final=%dd%-%mm%-%yyyy%"
echo %final%
Я просто повторяю окончательный результат, который до сегодняшней даты (для меня, как и 7-го числа) должен повторяться 06-09-2018
Вы можете изменить формат %final%
по своему усмотрению в соответствии с вашей датой.