La commande xcopy est une commande d'invite de commande utilisée pour copier un ou plusieurs fichiers ou dossiers d'un emplacement à un autre.
Avec ses nombreuses options et sa capacité à copier des répertoires entiers, il est similaire, mais beaucoup plus puissant que la commande de copie. La commande robocopy est également similaire mais a encore plus d'options.
Disponibilité de la commande Xcopy
Cette commande est disponible à partir de l'invite de commande dans tous les systèmes d'exploitation Windows, y compris Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows 98, etc.
Vous pouvez également accéder à la commande dans MS-DOS en tant que commande DOS.
Syntaxe de la commande Xcopy
Utilisez la syntaxe suivante pour la commande xcopy:
xcopy source [destination] [ /a] [ /b] [/c ] [/d [: date] [/e ] [ /f ] [/g ] [/h ] [/i] [ /j] [ /k] [ /l] [ /m] [ /n] [ /o] [ /p] [ /q] [ /r] [ /s] [ /t] [ /u] [ /v] [ /w] [ /x] [ /y] [ /-y] [ /z] [/exclude: fichier1 [+ fichier2][+ fichier3]…] [ /? ]
La disponibilité de certains commutateurs de commande xcopy et d'autres syntaxes de commande peut différer d'un système d'exploitation à l'autre. Apprenez à lire la syntaxe de la commande si vous ne savez pas comment lire la syntaxe ci-dessus ou dans le tableau ci-dessous.
Options de la commande Xcopy | |
---|---|
Article | Description |
source | Cela définit les fichiers ou le dossier de niveau supérieur à partir desquels vous souhaitez copier. La source est le seul paramètre obligatoire. Utilisez des guillemets autour de la source si elle contient des espaces. |
destination | Cette option spécifie l'emplacement où les fichiers ou dossiers source doivent être copiés. Si aucune destination n'est répertoriée, les fichiers ou dossiers seront copiés dans le même dossier à partir duquel vous exécutez la commande xcopy. Utilisez des guillemets autour de la destination si elle contient des espaces. |
/a | L'utilisation de cette option ne copiera que les fichiers d'archive trouvés dans source. Vous ne pouvez pas utiliser /a et /m ensemble. |
/b | Utilisez cette option pour copier le lien symbolique lui-même au lieu de la cible du lien. Cette option a été disponible pour la première fois dans Windows Vista. |
/c | Cette option force xcopy à continuer même s'il rencontre une erreur. |
/d [ : date] | Utilisez la commande avec l'option /d et une date spécifique, au format MM-JJ-AAAA, pour copier les fichiers modifiés à cette date ou après. Vous pouvez également utiliser cette option sans spécifier de date spécifique pour copier uniquement les fichiers dans la source qui sont plus récents que les mêmes fichiers qui existent déjà dans la destination. Ceci est utile lorsque vous utilisez xcopy pour effectuer des sauvegardes de fichiers régulières. |
/e | Lorsqu'elle est utilisée seule ou avec /s, cette option est la même que /s mais créera également des dossiers vides dans la destination qui étaient également vides dans la source. L'option /e peut également être utilisée avec l'option /t pour inclure les répertoires et sous-répertoires vides trouvés dans source dans la structure de répertoires créée dans destination. |
/f | Cette option affichera le chemin complet et le nom de fichier des fichiers source et destination en cours de copie. |
/g | L'utilisation de xcopy avec cette option vous permet de copier des fichiers cryptés dans la source vers une destination qui ne prend pas en charge le cryptage. Cette option ne fonctionnera pas lors de la copie de fichiers d'un lecteur crypté EFS vers un lecteur non crypté EFS. |
/h | La commande ne copie pas les fichiers cachés ou les fichiers système par défaut, mais le fera lors de l'utilisation de cette option. |
/i | Utilisez l'option /i pour forcer xcopy à supposer que la destination est un répertoire. Si vous n'utilisez pas cette option et que vous copiez à partir d'une source qui est un répertoire ou un groupe de fichiers et que vous copiez vers une destination qui n'existe pas, la commande xcopy vous demandera d'indiquer si la destination est un fichier ou un répertoire. |
/j | Cette option copie les fichiers sans mise en mémoire tampon, une fonctionnalité utile pour les très gros fichiers. Cette option a été disponible pour la première fois dans Windows 7. |
/k | Utilisez cette option lors de la copie de fichiers en lecture seule pour conserver cet attribut de fichier dans la destination. |
/l | Utilisez cette option pour afficher une liste des fichiers et dossiers à copier… mais aucune copie n'est réellement effectuée. L'option /l est utile si vous construisez une commande compliquée avec plusieurs options et que vous aimeriez voir comment elle fonctionnerait hypothétiquement. |
/m | Cette option est identique à l'option /a mais xcopy désactivera l'attribut archive après avoir copié le fichier. Vous ne pouvez pas utiliser /m et /a ensemble. |
/n | Cette option crée des fichiers et des dossiers dans la destination en utilisant des noms de fichiers courts. Cette option n'est utile que lorsque vous utilisez la commande pour copier des fichiers vers une destination qui existe sur un lecteur formaté sur un ancien système de fichiers comme FAT qui ne prend pas en charge les noms de fichiers longs. |
/o | Conserve la propriété et les informations de la liste de contrôle d'accès (ACL) dans les fichiers écrits dans la destination. |
/p | Lorsque vous utilisez cette option, vous serez invité avant la création de chaque fichier dans la destination. |
/q | Une sorte d'opposé de l'option /f, le commutateur /q mettra xcopy en mode "silencieux", en sautant le -affichage à l'écran de chaque fichier en cours de copie. |
/r | Utilisez cette option pour écraser les fichiers en lecture seule dans destination. Si vous n'utilisez pas cette option lorsque vous souhaitez écraser un fichier en lecture seule dans destination, vous serez invité avec un message "Accès refusé" et la commande cessera de s'exécuter. |
/s | Utilisez cette option pour copier des répertoires, des sous-répertoires et les fichiers qu'ils contiennent, en plus des fichiers à la racine de source. Les dossiers vides ne seront pas recréés. |
/t | Cette option force la commande xcopy à créer une structure de répertoires dans la destination mais à ne copier aucun des fichiers. En d'autres termes, les dossiers et sous-dossiers trouvés dans la source seront créés mais il n'y aura pas de fichiers. Les dossiers vides ne seront pas créés. |
/u | Cette option ne copiera que les fichiers dans la source qui sont déjà dans la destination. |
/v | Cette option vérifie chaque fichier tel qu'il est écrit, en fonction de sa taille, pour s'assurer qu'ils sont identiques. La vérification a été intégrée à la commande à partir de Windows XP, donc cette option ne fait rien dans les versions ultérieures de Windows et n'est incluse que pour la compatibilité avec les anciens fichiers MS-DOS. |
/w | Utilisez l'option /w pour présenter un message "Appuyez sur n'importe quelle touche lorsque vous êtes prêt à copier le(s) fichier(s)". La commande commencera à copier les fichiers comme indiqué après avoir confirmé en appuyant sur une touche. Cette option n'est pas la même que l'option /p qui demande une vérification avant chaque copie de fichier. |
/x | Cette option copie les paramètres d'audit des fichiers et les informations de la liste de contrôle d'accès au système (SACL). Vous sous-entendez /o lorsque vous utilisez l'option /x. |
/y | Utilisez cette option pour empêcher la commande de vous demander d'écraser les fichiers de la source qui existent déjà dans la destination. |
/-y | Utilisez cette option pour forcer la commande à vous demander de remplacer les fichiers. Cela peut sembler une option étrange car il s'agit du comportement par défaut de xcopy, mais l'option /y peut être prédéfinie dans la variable d'environnement COPYCMD sur certains ordinateurs, ce qui rend cette option nécessaire. |
/z | Cette option permet à la commande xcopy d'arrêter en toute sécurité la copie de fichiers lorsqu'une connexion réseau est perdue, puis de reprendre la copie là où elle s'était arrêtée une fois la connexion rétablie. Cette option affiche également le pourcentage copié pour chaque fichier pendant le processus de copie. |
/exclude: fichier1 [ + fichier2][ + fichier3]… | Cette option vous permet de spécifier un ou plusieurs noms de fichiers contenant une liste de chaînes de recherche que vous souhaitez que la commande utilise pour déterminer les fichiers et/ou dossiers à ignorer lors de la copie. |
/? | Utilisez le commutateur d'aide avec xcopy pour afficher une aide détaillée sur la commande. Exécuter xcopy /? revient à utiliser la commande help pour exécuter help xcopy. |
La commande xcopy ajoutera l'attribut archive aux fichiers de destination, peu importe si l'attribut était activé ou désactivé sur le fichier source.
Exemples de commande Xcopy
Voici plusieurs exemples d'utilisation de cette commande:
Copier les fichiers dans un nouveau dossier
xcopy C:\Fichiers E:\Fichiers /i
Dans l'exemple ci-dessus, les fichiers contenus dans le répertoire source de C:\Files sont copiés vers destination, un nouveau répertoire sur le lecteur E appelé Files.
Aucun sous-répertoire ni aucun fichier qu'il contient ne sera copié car l'option /s n'a pas été utilisée.
Script de sauvegarde Xcopy
xcopy "C:\Important Files" D:\Backup /c /d /e /h /i /k /q /r /s /x /y
Dans cet exemple, xcopy est conçu pour fonctionner comme une solution de sauvegarde. Essayez ceci si vous souhaitez utiliser xcopy au lieu d'un logiciel de sauvegarde pour sauvegarder vos fichiers. Placez la commande comme indiqué ci-dessus dans un script et programmez-la pour qu'elle s'exécute la nuit.
Comme indiqué ci-dessus, la commande est utilisée pour copier tous les fichiers et dossiers [/s] plus récents que ceux déjà copiés [/d], y compris les dossiers vides [/e] et les fichiers cachés [/h], à partir de source de C:\Important Files vers la destination de D:\Backup, qui est un répertoire . Nous avons des fichiers en lecture seule que nous voulons garder à jour dans la destination [/r] et nous voulons conserver cet attribut après avoir été copié [/k]. Nous voulons également nous assurer que nous conservons tous les paramètres de propriété et d'audit dans les fichiers que nous copions [/x]. Enfin, puisque nous exécutons xcopy dans un script, nous n'avons pas besoin de voir d'informations sur les fichiers lorsqu'ils sont copiés [/q], nous ne voulons pas être invités à écraser chacun [/y], nous ne voulons pas non plus que la commande s'arrête si elle rencontre une erreur [/c].
Copier des fichiers et des dossiers sur le réseau
xcopy C:\Videos "\\SERVER\Media Backup" /f /j /s /w /z
Ici, la commande est utilisée pour copier tous les fichiers, sous-dossiers et fichiers contenus dans les sous-dossiers [/s] de la source de C:\Videos vers le dossier de destination Media Backup situé sur un ordinateur du réseau en le nom du SERVEUR. Nous copions des fichiers vidéo très volumineux, donc la mise en mémoire tampon doit être désactivée pour améliorer le processus de copie [/j], et puisque nous copions sur le réseau, nous voulons pouvoir reprendre la copie si nous perdons la connexion réseau [/z]. Étant paranoïaques, nous voulons être invités à démarrer le processus avant qu'il ne fasse quoi que ce soit [/w], et nous voulons également voir tous les détails sur les fichiers qui sont copiés au fur et à mesure qu'ils sont copiés [/f].
Structure de dossier en double
xcopy C:\Client032 C:\Client033 /t /e
Dans ce dernier exemple, nous avons une source pleine de fichiers et de dossiers bien organisés dans C:\Client032 pour un client. Nous avons déjà créé un dossier de destination vide, Client033, pour un nouveau client, mais nous ne voulons pas copier de fichiers, juste la structure de dossiers vide [/t] afin que nous soyons organisés et préparés. Nous avons des dossiers vides dans C:\Client032 qui pourraient s'appliquer au nouveau client, nous voulons donc nous assurer qu'ils sont également copiés [/e].
Enregistrer la sortie parfois longue de la commande xcopy dans un fichier à l'aide d'un opérateur de redirection. Apprenez à rediriger la sortie de la commande vers un fichier ou consultez les astuces d'invite de commande pour plus de conseils.
Xcopy & Xcopy32
Sous Windows 98 et Windows 95, deux versions de la commande xcopy étaient disponibles: xcopy et xcopy32. Cependant, cette dernière commande n'a jamais été destinée à être exécutée directement.
Lorsque vous exécutez xcopy sous Windows 95 ou 98, soit la version 16 bits d'origine est automatiquement exécutée (en mode MS-DOS), soit la version 32 bits la plus récente est automatiquement exécutée (en mode Windows).
Pour être clair, quelle que soit la version de Windows ou MS-DOS que vous possédez, exécutez toujours la commande xcopy, pas xcopy32, même si elle est disponible. Lorsque vous exécutez xcopy, vous exécutez toujours la version la plus appropriée de la commande.
Commandes liées à Xcopy
La commande xcopy est similaire à bien des égards à la commande de copie, mais avec beaucoup plus d'options, comme la possibilité de copier des dossiers, de copier tous les fichiers dans des sous-répertoires et d'exclure des fichiers.
Cette commande ressemble également beaucoup à la commande robocopy sauf que robocopy a plus de flexibilité que même xcopy.
La commande dir est souvent utilisée avec xcopy pour vérifier quels dossiers et fichiers se trouvent dans un répertoire avant de terminer la commande.