xcopy 0 файл (ов) скопирован - PullRequest
0 голосов
/ 28 июня 2019

Я пытаюсь создать , для которого дата помечает текстовые файлы ежемесячно.

Я попробовал следующий код, но это говорит file not found, 0 files copied.

set FileDate=%date:/=%
set FileDateYYYY=%FileDate:~0,4%
set FileDateMM=%FileDate:~4,2%
set /a FileDateMM=%FileDateMM%
if %FileDateMM% EQU 0 ( SET FileDateMM=12
    SET /a FileDateYYYY=%FileDateYYYY%-1)
set FileDateOut=%FileDateYYYY%_%FileDateMM%
xcopy "L:\Capital Management\SAM Market Risk\OB lapses and surrenders\RawData\OB_PERSISTENCY.txt"  "L:\Capital Management\SAM Market Risk\OB lapses and surrenders\RawData\%FileDate%\" /C /D /Y /I

Файл не найден - OB_PERSISTENCY.txt
0 Файл (-ы) скопирован

Кто-нибудь знает, почему это так?

Если язамените имя файла OB_PERSISTENCY на *, оно работает, но мне нужно, чтобы оно работало с именем файла.

1 Ответ

0 голосов
/ 28 июня 2019

Переключатель /D используется для копирования файлов на основе даты модификации, которую вы не указали. Когда вы создаете папку назначения с помощью команды xcopy, дата модификации этой папки будет позже чем дата изменения файла, поэтому файл не будет скопирован.
Повторите попытку без этого переключателя, и он должен работать:

xcopy "L:\Capital Management\SAM Market Risk\OB lapses and surrenders\RawData\OB_PERSISTENCY.txt"  "L:\Capital Management\SAM Market Risk\OB lapses and surrenders\RawData\%FileDate%\" /C /Y /I
...