Цитата:
в директории D:\STOPotchet\rar\ каждый день создается папка, с названием %DATE:~0,2%%DATE:~3,2%%DATE:~8,2%. А проверку нужно запускать для предыдущего РАБОЧЕГО дня.
|
При условии, что сегодня папка уже создана, а надо взять вчерашнюю (точнее - за предыдущий раб день), и в директории D:\STOPotchet\rar\ нет лишних поддиректорий, не связанных с датами, вот решение без каких-либо служебных файлов
Код:

@Echo Off
Set Where=D:\STOPotchet\rar\
FOR /F "usebackq skip=1 delims=" %%D IN (`Dir "%Where%" /B /A:D /O:-D /T:C`) DO Set DirName=%Where%%%D\& GoTo :Continue
:Continue
Echo %DirName%
Как это работает: Команда Dir с применёнными ключами выдаёт список поддиректорий отсортированных по дате создания (вначале самая свежая), For в этом списке пропускает первую поддиректорию ("сегодняшняя") и при исполнении присваивает переменной %DirName% полный путь предыдущей по списку директории ("вчерашней").
При таком подходе обработку можно запускать хоть несколько раз, в случае же с лог-файлом после того, как он перепишется, информация о вчерашнем имени теряется и батник будет работать неправильно.