Robocopy не работает в PowerShell

Я пытаюсь запустить сценарий robocopy в PowerShell, чтобы вставить его в другой сценарий PowerShell:

$SERVERPATH = "E:\Cisco Config Backups"
$NETWORKPATH = "\\SERVER\Cisco Config Backups"
robocopy $SERVERPATH $NETWORKPATH /E /XC /XN /XO /R:0 /W:0 /COPY:T /LOG:C:\logs\robocopy_logs\config_copy.log /TEE /NP

Однако, когда я запускаю этот код, я вижу, что работает robocopy, и он дает мне следующий результат: ROBOCOPY :: Robust File Copy для Windows

  Started : Thursday, June 30, 2016 1:52:56 PM
  Source : E:\Cisco Config Backups
  Dest : \\SERVER\Cisco Config Backups

  Files : *.*

  Options : *.* /TEE /S /E /DCOPY:D /COPY:T /NP /XO /XN /XC /R:0 /W:0 

Но ничего не копируется, я хочу использовать robocopy для ведения журнала и поэтому могу пропустить уже существующие файлы.

Пожалуйста, дайте мне знать, если я делаю что-то не так.


person user2214162    schedule 30.06.2016    source источник


Ответы (1)


Критерий /COPY:T указывает, что нужно копировать только временные метки файла, поэтому фактические данные файла не копируются. Однако, поскольку в месте назначения нет файлов, куда можно было бы скопировать временные метки, ничего не происходит.

Вам необходимо указать как минимум /COPY:DT, чтобы данные файла были скопированы, но вы, вероятно, можете просто полностью удалить переключатель /COPY, так как вы, вероятно, захотите также атрибуты файла, которые будут скопированы по умолчанию вместе с данными файла и отметками времени.

Из robocopy / ?:

/COPY:copyflag[s] :: what to COPY for files (default is /COPY:DAT).  
                    (copyflags : D=Data, A=Attributes, T=Timestamps).  
                    (S=Security=NTFS ACLs, O=Owner info, U=aUditing info)

Вам также необходимо просмотреть все переключатели, которые вы используете, поскольку некоторые из них противоречат друг другу - не знаете, что делает robocopy в этих случаях. Как указывает Мэтт в комментарии ниже, у вас есть /E и /S. Вы хотите копировать пустые подкаталоги или нет? /E указывает копировать пустые каталоги, но /S указывает НЕ копировать пустые каталоги.

person Tony Hinkle    schedule 30.06.2016
comment
Я думаю, что есть еще кое-что. Есть еще ряд других моментов для рассмотрения. Количество повторных попыток снижено до 0, поэтому он не реагирует на сбой. xo и xn вместе, что исключает как старые, так и новые файлы, что зависит от места назначения. s и e говорят копировать подкаталоги, но оба включают и исключают пустые каталоги. Хотя может быть ничего. - person Matt; 30.06.2016
comment
Это помогло, мне не хватало D для копирования, также у меня есть XO XN, поэтому он не будет перезаписывать какие-либо файлы - person user2214162; 30.06.2016