#windows #batch-file
Вопрос:
У меня есть каталог со многими файлами, и я хочу определить, какая из них является самой новой версией каждого документа. Позже я хочу, например, переместить эти отфильтрованные файлы в новый каталог.
Содержимое каталога:
Great Document.xxx Great Document (Version 1).xxx Another Great Document.xxx Another Great Document (Version 1).xxx Another Great Document (Version 2.2).xxx
Название документа отличается, как и его версия. = Каждый документ существует в разных версиях.
В настоящее время я поместил все элементы каждого имени файла в массив !revfiles!
для последующего чтения в пакете:
!revfilename[%%i]! !revfilenameclean[%%i]! !revfilenameversion[%%i]! !revextension[%%i]!
- полное имя файла
- имя файла без ‘(Версия XX)’
- версия (только цифры с одним десятичным знаком)
- расширение файла
Вывод одной записи массива выглядит следующим образом:
Another Great Document (Version 2.2).xxx Another Great Document 2.2 .xxx
Я предполагаю, что это облегчает определение новейшей версии, но я не могу найти способ сделать это. Мы высоко ценим любую поддержку.
Комментарии:
1. Легко вы должны использовать сортировщик меток времени:
dir /b /O-D *.xxx