robocopy
Komenda robocopy
(Robust File Copy) służy do kopiowania plików i folderów z zachowaniem ich atrybutów, uprawnień oraz struktury katalogów. Oferuje funkcje niedostępne w standardowych poleceniach copy
i xcopy
, takie jak wznawianie przerwanych transferów, wielowątkowość, filtrowanie plików oraz synchronizację katalogów.
Dostępna jest w systemach Windows począwszy od Windows Vista (natywnie) oraz Windows Server 2003 Resource Kit (jako dodatek). Wspierana w Windows 7, 8, 10 i 11.
Składnia
Dział zatytułowany „Składnia”robocopy <źródło> <cel> [pliki] [opcje]
<źródło>
– ścieżka do katalogu źródłowego.<cel>
– ścieżka do katalogu docelowego.[pliki]
– opcjonalna lista plików do skopiowania (domyślnie wszystkie).[opcje]
– przełączniki kontrolujące sposób kopiowania i synchronizacji.
Parametry
Dział zatytułowany „Parametry”Parametr | Opis |
---|---|
/E | Kopiuje podkatalogi, łącznie z pustymi. |
/S | Kopiuje podkatalogi, z pominięciem pustych. |
/COPY:flags | Określa, które atrybuty kopiować (np. D – data, A – atrybuty, T – znaczniki czasowe). |
/MIR | Odbicie lustrzane – synchronizuje katalog docelowy, usuwając pliki nieistniejące w źródle. |
/Z | Włącza tryb restartowalny (wznawianie przerwanych transferów). |
/MT[:N] | Kopiuje wielowątkowo (domyślnie 8 wątków, maksymalnie 128). |
/LOG:<plik> | Zapisuje log operacji do wskazanego pliku. |
/R:N | Liczba prób ponowienia w przypadku błędów (domyślnie 1 milion). |
/W:N | Czas oczekiwania (w sekundach) między próbami (domyślnie 30). |
/XD <katalogi> | Wyklucza podane katalogi z kopiowania. |
/XF <pliki> | Wyklucza podane pliki z kopiowania. |
robocopy
domyślnie ignoruje pliki, które się nie zmieniły.- Wiele opcji można łączyć, aby dopasować zachowanie kopiowania do potrzeb.
Przykłady użycia
Dział zatytułowany „Przykłady użycia”robocopy C:\Projekty D:\Backup /E
# Synchronizacja folderu źródłowego z docelowym (usuwanie zbędnych plików)robocopy C:\Dane Z:\Serwer /MIR
# Kopiowanie z logiem i wielowątkowo (16 wątków)robocopy C:\Repo D:\Kopia /E /MT:16 /LOG:C:\raport.log
# Kopiowanie z wykluczeniem folderu "Tymczasowe" i plików *.tmprobocopy C:\Projekty D:\Backup /E /XD C:\Projekty\Tymczasowe /XF *.tmp
robocopy
nie kopiuje otwartych plików systemowych (chyba że uruchomione z Volume Shadow Copy Service).- W przypadku użycia
/MIR
należy uważać – może trwale usunąć pliki w katalogu docelowym. - W PowerShell można używać
robocopy
bez zmian składni, jako jest to zewnętrzne narzędzie.
Najczęściej spotykane błędy i jak je naprawić
Dział zatytułowany „Najczęściej spotykane błędy i jak je naprawić”Błąd / Komunikat | Przyczyna | Rozwiązanie |
---|---|---|
ERROR 32 (0x00000020) | Plik używany przez inny proces. | Zamknij aplikacje korzystające z pliku lub użyj opcji VSS (shadow copy). |
Access is denied | Brak odpowiednich uprawnień do katalogów źródłowych lub docelowych. | Uruchom CMD jako administrator lub nadaj prawa dostępu. |
Invalid Parameter | Niepoprawna kombinacja przełączników. | Sprawdź dokumentację i usuń sprzeczne opcje (np. /S i /MIR ). |