Robocopy (Robust File Copy) est l’outil de copie robuste Windows pour synchroniser, sauvegarder et migrer des données avec gestion avancée des erreurs.
⚙️ Syntaxe de base
robocopy <source> <destination> [options]
🧩 Options essentielles
🧩 Option | 🧠 Description |
---|---|
/E | Copie tout, y compris les sous-dossiers même vides |
/S | Copie tout, sauf les dossiers vides |
/MIR | Mirror : source = destination (attention ça peut supprimer dans le dossier dest 😬) |
/Z | Mode redémarrable (en cas de coupure réseau) |
/COPY:DAT | Copie les données, attributs, timestamps |
/DCOPY:T | Copie les timestamps des dossiers |
/R:5 | Réessaye 5 fois en cas d’échec (par défaut = 1 million) |
/W:5 | Attente 5 secondes entre chaque tentative |
/MT[:n] | Active le mode multi-threading (par ex. /MT:16 ) |
/LOG:log.txt | Sauvegarde la sortie dans un fichier log |
/TEE | Affiche en console et log (utile avec /LOG ) |
/NP | N’affiche pas la progression (%) |
/XO | Exclut les fichiers plus récents dans la destination |
/XX | Exclut les dossiers qui n’existent pas dans la source |
🎯 Options de filtrage
🧩 Option | 🧠 Description |
---|---|
/XD "dossier" | Exclut des dossiers spécifiques |
/XF "*.tmp" | Exclut des types de fichiers |
/MAXAGE:n | Fichiers modifiés depuis n jours maximum |
/MAX:n | Limite la taille des fichiers (en octets) |
/A | Copie seulement les fichiers avec attribut Archive |
/M | Copie et retire l’attribut Archive (backup incrémental) |
🔐 Options de sécurité
🧩 Option | 🧠 Description |
---|---|
/SEC | Copie les permissions de sécurité (NTFS) |
/COPYALL | Copie tout : données, attributs, timestamps, NTFS ACL, infos propriétaire |
/B | Mode sauvegarde (utilise les privilèges de sauvegarde) |
/SECFIX | Corrige la sécurité sur tous les fichiers, même ignorés |
/TIMFIX | Corrige les timestamps sur tous les fichiers, même ignorés |
🔥 Exemples concrets
🗃️ Backup simple de tous les fichiers & dossiers (y compris vides)
robocopy "C:\MesDocs" "E:\Backup" /E /Z /R:3 /W:5 /LOG:C:\Logs\backup.log
🪞 Synchronisation exacte
robocopy "D:\Source" "F:\Mirror" /MIR /Z /R:2 /W:3
⚡ Multi-thread (plus rapide)
robocopy "C:\Source" "D:\Cible" /E /MT:16 /R:2 /W:2
📜 Sauvegarde avec log et progression silencieuse
robocopy "C:\Projet" "Z:\Sauvegarde" /E /LOG:"C:\Logs\Projet.log" /NP /TEE
🚫 Copier sans écraser les fichiers plus récents déjà en place
robocopy "X:\Import" "Y:\Data" /E /XO
💾 Backup incrémental avec attribut Archive
robocopy "C:\Travail" "E:\Backup" /E /M /R:2 /W:3 /LOG+:"C:\Logs\incremental.log"
📋 Codes de sortie
Robocopy renvoie un code pour indiquer comment s’est passée la copie :
Codes courants :
0
= Aucun fichier copié (déjà à jour)1
= Fichiers copiés avec succès2
= Fichiers supplémentaires dans destination4
= Fichiers non concordants détectés8
= Fichiers échoués ou ignorés16
= Erreurs graves (espace disque, permissions…)
Exemple de vérification dans un script :
robocopy "C:\Source" "D:\Dest" /E
if %ERRORLEVEL% LEQ 7 (
echo ✅ Copie réussie (code: %ERRORLEVEL%)
) else (
echo ❌ Problème détecté (code: %ERRORLEVEL%)
)
Note : Les codes 0-7 sont considérés comme des succès, 8+ indiquent des problèmes