Назад | Перейти на главную страницу

Сценарий пакетного файла Windows: как получить каталог с последней датой (формат гггг-мм-дд)?

У меня есть каталог с множеством подкаталогов. Каждый подкаталог имеет имя в формате гггг-мм-дд. Я пишу командный файл Windows, и мне нужно получить имя каталога с самой последней датой и поместить эту строку в переменную. Даты последнего изменения были изменены, поэтому использование метки времени последнего изменения недопустимо.

Может кто-то указать мне верное направление?

for /f %%d in ('dir /ad /o-n /b .') do (
  echo %%d
  goto break
)
:break
  • / ad - отображает файлы с указанными атрибутами. (D: каталоги)
  • / o-n Список файлов в отсортированном порядке. (n: по имени (по буквам), -n: префикс к - обратный порядок)
  • / b Использует чистый формат (без заголовка или резюме).
  • goto break - выпрыгнуть из цикла, чтобы взять только первое

пс

  • / o-d Список файлов в отсортированном порядке. (d: по дате / времени (сначала старые), -d: префикс до - обратный порядок)