Используйте DIR
для вывода списка файлов, отсортированных по дате создания в порядке убывания.Обработайте результат с помощью FOR /F
, пропустив первую строку.Скопируйте первый итеративный файл, а затем вырвитесь из цикла с помощью GOTO
или EXIT /B
.
@echo off
pushd "c:\sourcePath"
for /f "skip=1 delims= eol=:" %%F in ('dir /b /o-d /tc') do (
copy "%%F" "c:\destinationPath"
popd
exit /b
)
Если вы хотите отсортировать данные по дате последнего изменения вместо даты создания, используйте /TW
вместо /TC
.
Обратите внимание, что "EOL=:
используется для того, чтобы значение EOL по умолчанию ;
не пропускало имена файлов, начинающиеся с ;
.Имена файлов не могут содержать :
, но они могут содержать ;
, хотя это крайне маловероятно.