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

31

Czy można użyć robocopy do kopiowania tylko plików, które nie istnieją w miejscu docelowym?

robocopy ma przełącznik / is (zawiera te same pliki). To, czego szukam, to przełącznik / xs. Jeśli plik istnieje zarówno w źródłowym, jak i docelowym, nie chcę, aby został skopiowany. Kryterium to tylko nazwa pliku, bez względu na zmodyfikowany dzień, rozmiar itp. Na przykład, nawet jeśli źródło ma nowszy plik (na podstawie zmodyfikowanej daty) niż ten sam plik w miejscu docelowym, nie chcę, aby był on kopiowany . Można to zrobić? Dzięki.

yky
źródło

Odpowiedzi:

37

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

robocopy /xc /xn /xo source destination 
Harry Johnston
źródło
To nie działa (przynajmniej jeśli masz także inne opcje - np. / B / e / copyall). Robocopy patrzy na znacznik czasu i uważam, że nawet jeśli znacznik czasu ostatniego dostępu jest inny, zostanie skopiowany. Jeśli istnieje sposób, chciałbym o tym wiedzieć.
Opcje / xn i / xo powinny uniemożliwić kopiowanie robocopy z powodu innego znacznika czasu. Działało dobrze, kiedy go testowałem. Robocopy nie zwraca uwagi na ostatnio uzyskiwany znacznik czasu. Twoja odpowiedź prawdopodobnie zostanie usunięta (ponieważ nie jest to odpowiedź), ale możesz przesłać mi wiadomość e-mail, jeśli chcesz to omówić.
Harry Johnston,
4
Użyj / FFT, jeśli kopiujesz pomiędzy różnymi systemami plików (NTFS, FAT). Powinno to uniemożliwić Robocopy myślenie, że plik jest starszy / nowszy, podczas gdy w rzeczywistości ma tę samą datę i godzinę.
Martin
@HarryJohnston, mam skrypt, który działa w pliku .bat i wydaje się, że kopiuje pliki, ale nadpisuje plik w folderze docelowym. Chcę wiedzieć, jak uzyskać ten skrypt do przenoszenia plików i do folderu docelowego dodać znacznik czasu jako część nazwy pliku docelowego? START /WAIT robocopy %EFM_EXPORT% %EFM_TEMP% *.CFX /S /NP /R:5 /W:5 /XX /XD *PR *PA *TA *DC *Bypass /MOV /LOG:%EFM_MOVE%
DJ KRAZE,
5
Warto również dodać /sprzełącznik, w przeciwnym razie nie wejdzie on do katalogów, jeśli już istnieją.
Tom Carpenter
-1

Jeśli kopiujesz od lewej do prawej, chcesz kopiować tylko osierocone pliki po lewej stronie po prawej stronie.

Używam płatnego narzędzia o nazwie Beyond Compare, które obsługuje tego typu scenariusze. RoboCopy doskonale nadaje się do mapowania dysków, a nawet ścieżek UNC, ale moje dwa przypadki użycia obejmują:

  • FTP, aby skopiować nowe pliki na moją stronę internetową
  • przenieś / zarchiwizuj pliki do DropBox

Tego niestety nie mogę zrobić z RoboCopy.

Słońce
źródło