5

Robocopy Копировать Флаги?

Я только недавно сделал ответ здесь https://stackoverflow.com/a/15211788/891976, где я предложил использовать robocopy и его флаги /copy , но по некоторым пока неизвестным причинам флаги /copy игнорируются.

Первоначально это было отмечено dbenham, но я также подтвердил, что когда я указал флаг /copy:DA , robocopy просто проигнорировал его и сделал полную копию DAT .

Robocopy Документация

скрипт

@echo off
robocopy Tools Tolls /COPY:DA /S /IS
pause >nul

Выход

------------------------------------------------------------------------------
   ROBOCOPY     ::     Robust File Copy for Windows

------------------------------------------------------------------------------

  Started : Mon Mar 04 16:59:43 2013

   Source : C:\Users\Username\Desktop\Tools\
     Dest : C:\Users\Username\Desktop\Tolls\

    Files : *.*

  Options : *.* /S /COPY:DAT /IS /R:1000000 /W:30

------------------------------------------------------------------------------

          New Dir          5    C:\Users\Username\Desktop\Tools\
100%        New File                 825        Connect.bat
100%        New File                 424        DevSpec.bat
100%        New File                 215        Disconnect.bat
100%        New File               69599        Shortcuts.zip
100%        New File              28.8 m        Tools.zip

------------------------------------------------------------------------------

               Total    Copied   Skipped  Mismatch    FAILED    Extras
    Dirs :         1         1         0         0         0         0
   Files :         5         5         0         0         0         0
   Bytes :   28.87 m   28.87 m         0         0         0         0
   Times :   0:00:00   0:00:00                       0:00:00   0:00:00


   Speed :           150632582 Bytes/sec.
   Speed :            8619.265 MegaBytes/min.

   Ended : Mon Mar 04 16:59:43 2013

Кто-нибудь знает, почему не работает флаг /copy ?

2 ответа2

3

Недокументированное поведение

Ну, казалось бы, недокументированное поведение выглядит следующим образом:

Всякий раз, когда D флаг используется для /COPY , robocopy автоматически добавляет T флаг.

Однако это не относится к флагу directory /DCOPY . Можно указать без T и работы.

Протестировано (без D файлы не копируются, только папки)

/Copy:D becomes /Copy:DT
/Copy:A becomes /DCopy:DA /Copy:A
/Copy:T becomes /DCopy:D /Copy:T
/Copy:DT becomes /DCopy:D /Copy:DT
/Copy:AT becomes /DCopy:DA /Copy:AT

Примечание: протестировано на 64-битной Windows 7 и 64-битной Windows 8.

2

Это по замыслу, а также это не документально.

Согласно документации Robocopy:

Note: If file Data is copied, then file Timestamps are also copied.

Это со страницы 6 в этом документе: XP010


О документе XP010, связанном выше:

В то время как 10 лет, на дату этой публикации, это самая последняя полная официальная документация Microsoft, доступная для Robocopy. В настоящее время он доступен как Robocopy.doc для версии XP010 при загрузке текущей версии графического интерфейса Robocopy с веб-сайта Microsoft. (Примечание: графический интерфейс Robocopy включает в себя версию XP026 Robocopy.exe и версию XP010 Robocopy.doc).

На момент публикации данного документа (официальная или печатная, электронная / загружаемая) полная официальная документация Microsoft не доступна для Robocopy версии XP026 или XP027.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .