2012-08-25 02:30:50 +0000 2012-08-25 02:30:50 +0000
32
32

Jak skopiować TYLKO te pliki, których nie ma w miejscu docelowym?

Czy jest możliwe użycie robocopy do skopiowania tylko tych plików, które nie istnieją w miejscu docelowym?

robocopy posiada przełącznik /is (include same files). To czego szukam to przełącznik /xs. Jeśli plik istnieje zarówno w źródle, jak i w miejscu docelowym, nie chcę, aby był kopiowany. Kryterium jest tylko nazwa pliku, bez względu na dzień modyfikacji, rozmiar, itp. Na przykład, nawet jeśli źródło ma nowszy plik (w oparciu o zmodyfikowaną datę) niż ten sam plik w miejscu docelowym, nie chcę, aby został on skopiowany. Czy można to zrobić? Dzięki.

Odpowiedzi (2)

38
38
38
2012-08-25 23:47:07 +0000

Wystarczy użyć flag /xc (wykluczyć zmienione) /xn (wykluczyć nowsze) i /xo (wykluczyć starsze):

robocopy /xc /xn /xo source destination
```.
-1
-1
-1
2014-11-05 20:09:14 +0000

Jeśli kopiujesz od lewej do prawej, chcesz skopiować tylko osierocone pliki z lewej strony na prawą.

Używam płatnego narzędzia o nazwie Beyond Compare , które obsługuje tego typu scenariusze. RoboCopy jest świetny dla zmapowanych dysków lub nawet ścieżek UNC, ale moje dwa przypadki użycia obejmują:

  • FTP do kopiowania nowych plików na moją stronę internetową
  • przenoszenie/archiwizowanie plików do DropBox

Tego niestety nie mogę zrobić z RoboCopy.