ANAVEM
Référence
Languageen
Comment utiliser Robocopy dans Windows pour la copie et la sauvegarde de fichiers

Comment utiliser Robocopy dans Windows pour la copie et la sauvegarde de fichiers

Maîtrisez l'outil en ligne de commande Robocopy intégré à Windows pour une copie de fichiers efficace, des opérations de sauvegarde et la synchronisation des données avec des exemples pratiques et des options avancées.

Emanuel DE ALMEIDAEmanuel DE ALMEIDA
3/16/2026 12 min 1
mediumrobocopy 8 étapes 12 min

Pourquoi maîtriser Robocopy pour les opérations de fichiers Windows ?

Robocopy (Robust File Copy) est l'utilitaire de copie et de sauvegarde de fichiers intégré le plus puissant de Windows, surpassant de loin la commande de copie de base ou l'Explorateur Windows pour les tâches sérieuses de gestion des données. Contrairement aux opérations de copie simples, Robocopy offre des fonctionnalités de niveau entreprise, y compris le multi-threading, la résilience réseau, la journalisation détaillée et des options de filtrage sophistiquées qui le rendent indispensable pour les administrateurs système et les utilisateurs avancés.

Qu'est-ce qui rend Robocopy supérieur aux méthodes de copie standard ?

Intégré à chaque installation moderne de Windows depuis Windows Vista, Robocopy excelle dans les scénarios où les opérations de copie standard échouent ou s'avèrent inefficaces. Son mode miroir peut créer des répliques exactes des structures de répertoires tout en gérant intelligemment les suppressions de fichiers, ses capacités de multi-threading peuvent accélérer considérablement les transferts importants, et ses mécanismes de réessai garantissent une copie fiable sur des connexions réseau instables. Les vastes options de filtrage de l'outil permettent un contrôle précis sur ce qui est copié, le rendant parfait pour les routines de sauvegarde qui doivent exclure les fichiers temporaires, les répertoires système ou les fichiers dépassant certains seuils de taille.

Quand devriez-vous choisir Robocopy plutôt que des outils GUI ?

Bien que les outils de sauvegarde graphiques offrent des interfaces conviviales, la nature en ligne de commande de Robocopy le rend idéal pour l'automatisation, le scripting et l'intégration dans des flux de travail d'administration système plus larges. Son comportement déterministe, sa journalisation complète et sa capacité à reprendre les transferts interrompus en font le choix préféré pour les opérations de sauvegarde critiques, les projets de migration de données et tout scénario où vous avez besoin d'un contrôle total sur le processus de copie de fichiers. À partir de 2026, Robocopy reste inchangé dans sa fonctionnalité de base, garantissant que les scripts et procédures développés aujourd'hui continueront de fonctionner de manière fiable sur les futures versions de Windows.

Guide de mise en oeuvre

Procédure complète

01

Ouvrir l'invite de commande avec les privilèges d'administrateur

Commencez par ouvrir une invite de commande avec élévation de privilèges pour vous assurer que Robocopy dispose des autorisations nécessaires pour toutes les opérations. Faites un clic droit sur le bouton Démarrer et sélectionnez Terminal (Admin) ou Invite de commandes (Admin).

Alternativement, appuyez sur Win + R, tapez cmd, et appuyez sur Ctrl + Shift + Entrée pour ouvrir en tant qu'administrateur.

Astuce pro : Vous pouvez également utiliser PowerShell à la place de l'Invite de commandes - Robocopy fonctionne de manière identique dans les deux environnements.

Vérification : La barre de titre de l'invite de commande doit afficher "Administrateur" et vous devriez voir une invite UAC lors de l'ouverture.

robocopy /?

Exécutez cette commande pour vérifier que Robocopy est disponible et voir un aperçu de la syntaxe de base.

02

Effectuer une opération de copie de fichier de base

Commençons par une simple opération de copie pour comprendre la syntaxe de base de Robocopy. La structure fondamentale est : robocopy source destination [fichiers] [options]

Créez un scénario de test en copiant des fichiers de votre dossier Documents vers un emplacement de sauvegarde :

robocopy "C:\Users\%USERNAME%\Documents" "D:\Backup\Documents" /E /COPY:DAT

Cette commande copie tous les fichiers et sous-répertoires (/E) tout en préservant les données, attributs et horodatages (/COPY:DAT). Le drapeau /E inclut les répertoires vides, tandis que /COPY:DAT garantit que les métadonnées des fichiers sont préservées.

Astuce pro : Utilisez toujours des guillemets autour des chemins contenant des espaces pour éviter les erreurs.

Vérification : Vérifiez le dossier de destination pour confirmer que les fichiers ont été copiés. Robocopy affichera un résumé montrant les fichiers copiés, ignorés et les éventuelles erreurs.

dir "D:\Backup\Documents" /s

Utilisez cette commande pour vérifier que la structure du répertoire a été correctement reproduite.

03

Tester les opérations en mode simulation

Avant d'effectuer toute opération majeure de copie ou de sauvegarde, testez toujours avec le mode liste uniquement de Robocopy pour prévisualiser ce qui se passera sans réellement copier les fichiers.

robocopy "C:\Important Data" "D:\Backup" /L /E /R:0

Le drapeau /L effectue une simulation, montrant exactement ce qui serait copié sans réellement déplacer de données. Le drapeau /R:0 fixe les tentatives de réessai à zéro pour un test plus rapide.

Pour une prévisualisation plus détaillée montrant les tailles et les dates des fichiers :

robocopy "C:\Important Data" "D:\Backup" /L /E /V /TS

Le drapeau /V fournit une sortie détaillée, tandis que /TS inclut les horodatages des fichiers source dans la sortie.

Avertissement : Ne sautez jamais la simulation lors de l'utilisation du mode /MIR (miroir), car cela peut supprimer des fichiers dans la destination qui n'existent pas dans la source.

Vérification : Examinez attentivement la sortie. Recherchez le résumé à la fin montrant combien de fichiers seraient copiés, et assurez-vous qu'aucune suppression inattendue n'est répertoriée.

04

Créer une sauvegarde miroir avec synchronisation

Le mode miroir (/MIR) est la fonctionnalité la plus puissante de Robocopy pour créer des répliques exactes des répertoires source. Il copie les fichiers nouveaux et modifiés tout en supprimant les fichiers dans la destination qui n'existent plus dans la source.

Tout d'abord, testez l'opération de miroir :

robocopy "C:\ProjectFiles" "D:\Mirror\ProjectFiles" /MIR /L

Une fois satisfait de l'aperçu, exécutez l'opération de miroir réelle avec journalisation :

robocopy "C:\ProjectFiles" "D:\Mirror\ProjectFiles" /MIR /R:3 /W:5 /LOG:"C:\robocopy_mirror.log"

Cette commande reflète le répertoire source, réessaie les opérations échouées 3 fois (/R:3), attend 5 secondes entre les tentatives (/W:5), et enregistre toutes les activités dans un fichier.

Pour les emplacements réseau ou les grands ensembles de données, ajoutez le multithreading :

robocopy "\\Server\Share" "D:\LocalMirror" /MIR /MT:16 /R:5 /W:10 /LOG+:"C:\network_backup.log"

Le drapeau /MT:16 utilise 16 threads pour une copie plus rapide, tandis que /LOG+ ajoute à un fichier journal existant.

Astuce pro : Utilisez /MT:32 pour des performances maximales sur les systèmes modernes avec un stockage rapide, mais réduisez à /MT:8 pour les opérations réseau afin d'éviter de surcharger la connexion.

Vérification : Vérifiez le fichier journal et comparez les tailles des dossiers source et destination en utilisant les commandes dir /s.

05

Configurer le filtrage avancé et les exclusions

Robocopy offre des options de filtrage puissantes pour exclure des fichiers, dossiers ou types de fichiers spécifiques des opérations de copie. Ceci est essentiel pour les scénarios de sauvegarde où vous souhaitez ignorer les fichiers temporaires, les fichiers système ou les fichiers multimédias volumineux.

Exclure des types de fichiers et répertoires spécifiques :

robocopy "C:\Users\%USERNAME%" "D:\UserBackup" /E /XF *.tmp *.log *.cache /XD "AppData" "Temp" ".git"

Le drapeau /XF exclut les fichiers par motif, tandis que /XD exclut des répertoires entiers. Cet exemple ignore les fichiers temporaires et les répertoires de cache courants.

Pour un filtrage plus complexe, combinez plusieurs motifs d'exclusion :

robocopy "C:\Development" "D:\DevBackup" /E /XF *.obj *.exe *.dll *.pdb /XD "bin" "obj" "node_modules" ".vs" /MAX:100000000

Le drapeau /MAX:100000000 exclut les fichiers de plus de 100 Mo (utile pour ignorer les gros fichiers binaires ou multimédias).

Inclure uniquement des types de fichiers spécifiques :

robocopy "C:\Documents" "D:\DocumentBackup" *.docx *.xlsx *.pdf /S

Cela copie uniquement les documents Office et les PDF, en utilisant /S pour inclure les sous-répertoires mais pas ceux qui sont vides.

Avertissement : Faites attention avec les motifs d'exclusion - des motifs trop larges comme *.log pourraient exclure des journaux d'application importants que vous souhaitez réellement sauvegarder.

Vérification : Utilisez les commandes dir avec des filtres pour confirmer que les fichiers exclus ne sont pas présents dans la destination et que les fichiers inclus sont copiés correctement.

06

Mettre en œuvre une sauvegarde incrémentielle avec filtrage par date

Robocopy excelle dans les sauvegardes incrémentielles en copiant uniquement les fichiers qui ont changé depuis la dernière sauvegarde. Utilisez des filtres de date et d'attribut pour créer des routines de sauvegarde efficaces.

Copiez uniquement les fichiers modifiés au cours des 7 derniers jours :

robocopy "C:\WorkFiles" "D:\IncrementalBackup" /E /MAXAGE:7 /LOG:"C:\incremental_backup.log"

Le drapeau /MAXAGE:7 inclut uniquement les fichiers modifiés au cours des 7 derniers jours. Vous pouvez également utiliser des dates spécifiques :

robocopy "C:\WorkFiles" "D:\IncrementalBackup" /E /MAXAGE:20260301 /LOG:"C:\monthly_backup.log"

Pour les sauvegardes incrémentielles basées sur le bit d'archive (méthode de sauvegarde traditionnelle) :

robocopy "C:\ImportantData" "D:\ArchiveBackup" /E /M /LOG:"C:\archive_backup.log"

Le drapeau /M copie les fichiers avec l'attribut d'archive défini puis efface l'attribut, les marquant comme sauvegardés.

Combinez avec des filtres de taille pour plus de contrôle :

robocopy "C:\Database" "D:\DBBackup" /E /MAXAGE:1 /MIN:1024 /MAX:2147483648 /LOG+:"C:\db_backup.log"

Cela copie les fichiers de base de données modifiés aujourd'hui qui sont compris entre 1 Ko et 2 Go.

Astuce pro : Utilisez /A-:SH pour exclure les fichiers système et cachés des sauvegardes, ou /IA:A pour inclure uniquement les fichiers avec l'attribut d'archive défini.

Vérification : Vérifiez le fichier journal pour le nombre de fichiers copiés et comparez les horodatages pour vous assurer que seuls les fichiers récents ont été inclus.

07

Surveiller le progrès et gérer les opérations de longue durée

Pour les opérations de sauvegarde importantes, surveiller la progression et gérer les interruptions est crucial. Robocopy offre plusieurs options pour le suivi de la progression et les opérations reprises.

Activer la surveillance de la progression en temps réel :

robocopy "C:\LargeDataset" "D:\Backup" /E /ETA /BYTES /TEE /LOG:"C:\progress_backup.log"

Le drapeau /ETA montre le temps estimé restant, /BYTES affiche la progression en octets, et /TEE envoie la sortie à la fois à la console et au fichier journal simultanément.

Pour les opérations réseau qui pourraient être interrompues, utilisez des paramètres de réessai robustes :

robocopy "\\RemoteServer\Data" "D:\NetworkBackup" /E /R:10 /W:30 /REG /TBD /MT:8

Cette configuration réessaie les opérations échouées 10 fois (/R:10), attend 30 secondes entre les réessais (/W:30), enregistre les paramètres de réessai dans le registre (/REG), et attend que les noms de partage soient définis (/TBD).

Créer une tâche de sauvegarde reprenable qui peut être interrompue et redémarrée :

robocopy "C:\CriticalData" "D:\SafeBackup" /MIR /Z /MT:4 /R:5 /W:15 /LOG+:"C:\resumable_backup.log"

Le drapeau /Z active le mode redémarrable pour les fichiers volumineux, permettant aux transferts interrompus de reprendre là où ils se sont arrêtés.

Astuce pro : Utilisez /NP pour désactiver l'affichage du pourcentage de progression si vous exécutez Robocopy dans des scripts ou des tâches planifiées où la sortie console n'est pas nécessaire.

Vérification : Surveillez la sortie de la console pendant l'opération et vérifiez le fichier journal après l'achèvement pour toute tentative de réessai ou échec.

08

Créer des scripts de sauvegarde automatisés et des tâches planifiées

Transformez vos commandes Robocopy en scripts batch réutilisables et tâches planifiées Windows pour des routines de sauvegarde automatisées.

Créez un script de sauvegarde complet. Ouvrez Notepad et créez daily_backup.bat :

@echo off
echo Démarrage de la sauvegarde quotidienne - %date% %time%
echo.

REM Miroir des données utilisateur critiques
robocopy "C:\Users\%USERNAME%\Documents" "D:\Backup\Documents" /MIR /R:3 /W:5 /LOG+:"C:\Logs\daily_backup.log"

REM Sauvegarde des fichiers de projet (incrémentielle)
robocopy "C:\Projects" "D:\Backup\Projects" /E /M /XD "node_modules" ".git" /LOG+:"C:\Logs\daily_backup.log"

REM Copie de la configuration système
robocopy "C:\Windows\System32\drivers\etc" "D:\Backup\SystemConfig" /E /LOG+:"C:\Logs\daily_backup.log"

echo.
echo Sauvegarde terminée - %date% %time%
echo Vérifiez le fichier journal : C:\Logs\daily_backup.log
pause

Créez le répertoire de script et exécutez-le :

mkdir "C:\Logs"
"C:\Scripts\daily_backup.bat"

Créez une tâche planifiée à l'aide du Planificateur de tâches. Ouvrez l'invite de commande en tant qu'administrateur et exécutez :

schtasks /create /tn "Daily Robocopy Backup" /tr "C:\Scripts\daily_backup.bat" /sc daily /st 02:00 /ru SYSTEM

Cela crée une tâche qui s'exécute quotidiennement à 2h00 sous le compte SYSTEM.

Pour une planification plus complexe avec gestion des erreurs :

@echo off
setlocal enabledelayedexpansion

set LOGFILE=C:\Logs\backup_%date:~-4,4%%date:~-10,2%%date:~-7,2%.log
echo Sauvegarde commencée à %date% %time% > "%LOGFILE%"

robocopy "C:\ImportantData" "D:\Backup" /MIR /R:3 /W:5 /LOG+:"%LOGFILE%"
set ERRORLEVEL_ROBOCOPY=!ERRORLEVEL!

if !ERRORLEVEL_ROBOCOPY! GEQ 8 (
    echo ERREUR : La sauvegarde a échoué avec le code de sortie !ERRORLEVEL_ROBOCOPY! >> "%LOGFILE%"
    exit /b 1
) else (
    echo SUCCÈS : Sauvegarde terminée avec succès >> "%LOGFILE%"
    exit /b 0
)
Avertissement : Les codes de sortie de Robocopy sont différents des programmes standards. Les codes de sortie 0-7 indiquent un succès avec diverses conditions, tandis que 8+ indiquent des erreurs.

Vérification : Testez d'abord le script manuellement, puis vérifiez l'historique du Planificateur de tâches et les fichiers journaux pour confirmer que l'exécution automatisée fonctionne correctement.

Questions Fréquentes

Quelle est la différence entre les options /E et /S de Robocopy pour la copie de répertoires ?+
Le drapeau /S copie les sous-répertoires mais exclut les répertoires vides, tandis que /E copie tous les sous-répertoires, y compris les vides. Utilisez /E pour une réplication complète de la structure du répertoire et /S lorsque vous souhaitez ignorer les dossiers vides pour économiser de l'espace et réduire l'encombrement dans votre destination.
Comment puis-je tester en toute sécurité les commandes Robocopy avant de les exécuter sur des données importantes ?+
Utilisez toujours le drapeau /L (mode liste uniquement) pour effectuer une simulation qui montre exactement ce qui serait copié sans réellement déplacer de fichiers. Combinez-le avec /V pour une sortie détaillée afin de voir des informations détaillées sur les fichiers. Ce mode de prévisualisation est essentiel avant d'utiliser des opérations destructrices comme /MIR (mode miroir).
Que signifie le code de sortie 1 de Robocopy et devrais-je m'en inquiéter ?+
Les codes de sortie Robocopy 0-7 indiquent des opérations réussies avec différentes conditions. Le code de sortie 1 signifie que les fichiers ont été copiés avec succès. Le code de sortie 0 signifie qu'aucun fichier n'avait besoin d'être copié. Seuls les codes de sortie 8 et plus indiquent des erreurs réelles nécessitant une attention, telles que l'accès refusé ou des échecs réseau.
Comment puis-je accélérer les opérations Robocopy pour les transferts de fichiers volumineux ?+
Utilisez le drapeau /MT avec un nombre de threads entre 8-32 (par exemple, /MT:16) pour la copie multi-thread. Ajoutez /J pour les E/S non mises en mémoire tampon sur les lecteurs locaux, et /COMPRESS pour les transferts réseau. Évitez un nombre excessif de threads lors des opérations réseau car cela peut saturer les connexions et en réalité ralentir les performances.
Robocopy peut-il reprendre les transferts de fichiers interrompus et quelle est la fiabilité de cette fonctionnalité ?+
Oui, utilisez le drapeau /Z pour activer le mode redémarrable pour les fichiers volumineux. Cela permet aux transferts interrompus de reprendre à partir du point de contrôle plutôt que de recommencer. Cependant, /Z ajoute une surcharge et ne devrait être utilisé que pour les fichiers volumineux sur des connexions peu fiables. Pour la plupart des opérations locales, les mécanismes de réessai intégrés de Robocopy (drapeaux /R et /W) sont suffisants.
Emanuel DE ALMEIDA
Écrit par

Emanuel DE ALMEIDA

Microsoft MCSA-certified Cloud Architect | Fortinet-focused. I modernize cloud, hybrid & on-prem infrastructure for reliability, security, performance and cost control - sharing field-tested ops & troubleshooting.

Discussion

Partagez vos réflexions et analyses

Vous devez être connecté pour commenter.

Chargement des commentaires...