Файл XCOPY с разными расширениями - PullRequest
1 голос
/ 03 апреля 2020

В контексте существует приложение, которое генерирует файлы с тем же именем, но при размещении расширения оно помещает число, которое увеличивается на единицу каждый раз, когда оно генерируется, приложение делает это таким образом, и я не могу его изменить.

Теперь я хочу скопировать в XCOPY только самый последний файл с именем DPD14400, но разный по своему расширению, и, в свою очередь, чтобы последний файл изменил расширение на. «Tab», допустим, что следующие файлы находятся в C;

  • FILE.001 -> Дата изменения: 01/01/2020
  • FILE.002 -> Дата изменения: 02/01/2020
  • FILE.002 -> Дата изменения: 03/01/2020
  • DPD14400.001 -> Дата изменения: 01/01/2020
  • DPD14400 .002 -> Дата изменения: 02/01/2020
  • DPD14400.003 -> Дата изменения: 03/01/2020
  • DPD14400.004 -> Дата изменения: 04/01/2020
  • TEXT.001 -> Дата изменения: 01/01/2020
  • TEXT.002 -> Дата изменения: 02/01/2020
  • TEXT.003 -> Изменение дата: 03/01/2020

Я пытаюсь сделать это с этим кодом, но он создает каталог для меня с именем файла, а затем, если файл вставляет меня, как я могу Не создавайте каталог и вставляйте его непосредственно в d:

xcopy "c:\DPD14400.*" "d:\DPD14400.tab" /y /d /i

Спасибо за ваш ответ.

Сердечно,

1 Ответ

0 голосов
/ 03 апреля 2020

Я думаю, вы можете использовать просто копию вместо xcopy. Вы можете получить последний файл с некоторыми фильтрами dir:

@echo off

set "mask=DPD*"

for /f "tokens=* delims=" %%a in ('dir /b /a:-d /o:-d /t:c %mask%') do (
    set "last_file=%%~fa"
    set "last_file_without_extension=%%~na"
    goto:break
)
:break

copy /y "%last_file%" "d:\%last_file_without_extension%.tab"
...