Utilitaires copier et remplacer - copier et remplacer des fichiers via la ligne de commande. Commandes de base (Windows cmd)

Afin de travailler pleinement avec des fichiers et des répertoires dans ligne de commande, nous devons pouvoir les créer, les déplacer, les copier et les supprimer. A chacune de ces actions correspond une commande.

Bien que, pour être précis, la même commande soit utilisée pour renommer les fichiers et les déplacer, car la même opération est effectuée pour modifier la table dans laquelle le répertoire stocke une liste de fichiers situés à l'intérieur de ce répertoire.

Travailler avec des fichiers sur la ligne de commande

Création de fichier

Vous pouvez utiliser la commande touch pour créer un fichier. En fait, le but de cette commande est de changer la date du dernier accès au fichier et la date dernier changement dossier.

L'exécution de la commande sans paramètres touch path_to_file/file mettra à jour l'heure du dernier accès au fichier et l'heure de la dernière modification. Si un tel fichier n'existe pas, il sera créé fichier vide avec le nom spécifié dans la commande.

Pour mettre à jour uniquement la date d'accès, utilisez l'option -a, pour mettre à jour uniquement la date modifiée, utilisez l'option -m. Vous pouvez également définir une date arbitraire au lieu de la date actuelle à l'aide de l'option -t suivie d'une date au format MMDDhhmm[.SS] , par ex.

Création d'annuaire

Pour créer des répertoires, il existe la commande mkdir (depuis Anglais m un k e directeurétoire).

Syntaxe : mkdir nom_répertoire... , où nom du répertoire est le chemin et le nom du répertoire à créer. Vous pouvez spécifier plusieurs répertoires séparés par des espaces.

S'il existe des répertoires inexistants dans le chemin d'accès au répertoire créé, le répertoire ne sera pas créé et un message d'erreur s'affichera. Pour créer plusieurs répertoires imbriqués, utilisez l'option -p. Par exemple, la commande :

Mkdir -p dossier1/dossier2/dossier3

va créer les trois répertoires dossier1, dossier2, dossier3 au cas où ils n'existeraient pas.

Par défaut, les répertoires sont créés avec le jeu d'autorisations 755 ; pour créer un répertoire avec un ensemble d'autorisations différent, utilisez l'option -m autorisations, comme ceci : mkdir -m 750 dossier .

Déplacer et changer le nom d'un fichier ou d'un répertoire

Les noms de fichiers ou de répertoires ne sont pas stockés dans les fichiers eux-mêmes, mais sont des entrées dans une table qui contient une liste avec les noms des fichiers et des répertoires situés dans ce répertoire. Ainsi, lorsque vous renommez un fichier ou que vous le déplacez vers un autre répertoire, la même opération est effectuée - modifier la table des répertoires avec une liste de fichiers. Par conséquent, la même commande mv est utilisée pour déplacer et modifier le nom du fichier (de Anglais m o v e).

Syntaxe de la commande : mv fichier_source nouveau_fichier, où fichier d'origine est le chemin d'accès au fichier ou au répertoire et le nom du fichier ou du répertoire que vous souhaitez déplacer, et nouveau fichier est le chemin vers la destination où le fichier ou le répertoire doit être déplacé, et le nouveau nom du fichier ou du répertoire à déplacer.

mv /Users/ixrevo/Downloads/hello.txt /Users/ixrevo/Desktop/hi.txt dans cet exemple, nous déplaçons le fichier hello.txt du répertoire /Users/ixrevo/Downloads/ vers le bureau /Users/ixrevo/ Desktop/ , et le nom du fichier déplacé sera hi.txt (le contenu du fichier restera inchangé).

Étant donné que notre répertoire actuel était /Users/ixrevo/ , nous pourrions spécifier chemin relatif déposer :
cp Téléchargements/hello.txt Bureau/hi.txt

Vous pouvez en savoir plus sur le répertoire courant dans l'article Naviguer dans le système de fichiers sur la ligne de commande, mais sur le relatif et chemins absolus- dans l'article "Comment est organisée la structure du système de fichiers Mac OS X" .

Vous pouvez également renommer un fichier ou un répertoire sans le déplacer :

Mv bonjour.txt salut.txt

Ou déplacer sans renommer :

Mv /Users/ixrevo/Downloads/hello.txt /Users/ixrevo/Desktop/

Pourquoi vous devez spécifier uniquement le répertoire où déplacer le fichier ou le répertoire, sans spécifier un nouveau nom (enfin, ou spécifier l'ancien nom).

Une autre façon d'utiliser la commande mv est pratique pour déplacer plusieurs fichiers ou répertoires : mv fichier_source_1 fichier_source_2 ... répertoire où fichier source_1, fichier source_2, etc.- les chemins et noms des fichiers ou répertoires à déplacer, et annuaire est le chemin d'accès au répertoire dans lequel vous souhaitez déplacer les fichiers spécifiés précédemment.

Copie de fichier

Pour copier des fichiers et des répertoires, il existe une commande cp, qui est l'abréviation de c o p y.

Syntaxe de la commande : cp fichier_source nouveau_fichier, où fichier d'origine est le chemin et le nom du fichier à copier, et nouveau fichier est le moyen de copie créée fichier et le nom de cette copie.

Par exemple, en exécutant la commande :

Cp /Users/ixrevo/Downloads/hello.txt /Users/ixrevo/Desktop/hi.txt

Nous allons copier le fichier hello.txt du répertoire /Users/ixrevo/Downloads/ vers le bureau /Users/ixrevo/Desktop/ , et le nom de la copie du fichier sera hi.txt .

La commande cp vous permet également de copier plusieurs fichiers :

Cp fichier_source_1 fichier_source_2 ... répertoire

Fichier source_1, fichier source_2, etc.- les chemins d'accès aux fichiers et les noms des fichiers à copier, et annuaire est le chemin d'accès au répertoire dans lequel vous souhaitez copier les fichiers spécifiés précédemment.

Copier un répertoire

Pour copier des répertoires, la commande cp est utilisée avec l'option -R ou -r (de Anglais récursif). La commande cp exécutée avec cette option, si un répertoire a été donné comme premier argument, copiera le répertoire et tout son contenu, c'est-à-dire tous les répertoires et fichiers imbriqués.

La syntaxe de la commande dans ce cas est la suivante :

Cp -r destination_dir à copier

Si vous essayez de copier un répertoire sans l'option -r, le répertoire ne sera pas copié et un message d'erreur s'affichera.

Suppression d'un fichier

Pour supprimer des fichiers, utilisez la commande rm (depuis Anglais rémo v e). Syntaxe : rm fichier... , où dossier est le chemin et le nom du fichier à supprimer. Vous pouvez également spécifier plusieurs fichiers à supprimer.

Suppression d'un répertoire

Il existe plusieurs façons de supprimer des répertoires. Par exemple, vous pouvez utiliser la commande

Répertoire Rmdir...

annuaire est le chemin et le nom du répertoire à supprimer. Vous pouvez également spécifier plusieurs répertoires à supprimer.

Si le répertoire n'est pas vide, c'est-à-dire qu'il contient des fichiers et/ou des dossiers imbriqués, la commande rmdir ne pourra pas supprimer ce répertoire et émettra un message d'erreur.

Semblable à la commande rmdir, la commande rm avec l'option -d fonctionne.

Bien sûr, supprimer le contenu du répertoire à chaque fois, puis lui-même n'est pas très intéressant, mais, heureusement, il existe un moyen de supprimer le répertoire avec tout son contenu. Pour ce faire, exécutez la commande rm avec l'option -R ou -r, puis tous les fichiers et répertoires spécifiés dans la commande rm -r répertoire... seront supprimés avec tous les répertoires imbriqués. Mais veillez à ne rien supprimer de ce dont vous avez besoin avec cette commande, d'autant plus qu'il n'y a pas de corbeille sur la ligne de commande et que les fichiers avec des répertoires sont définitivement supprimés.

XCOPY copie les fichiers et les répertoires, y compris les sous-répertoires dans la commande Ligne Windows. Il s'agit d'une commande puissante pour copier des fichiers et des dossiers et a plus d'options que la simple commande COPY.

Options de l'utilitaire XCOPY

xcopy source [résultat] ] ] [(/a|/m)] ][+[fichier3]] [(/y|/-y)]

  • une source - Paramètre obligatoire. Spécifie l'emplacement et les noms des fichiers à copier. Le paramètre doit être soit un lecteur, soit un chemin.
  • résultat- Spécifie l'emplacement où les fichiers seront copiés. Le paramètre peut inclure un nom de lecteur délimité par deux-points, un nom de répertoire, un nom de fichier ou une combinaison des deux.
  • /w- Affiche le message suivant en attendant la confirmation du démarrage de la copie : Appuyez sur n'importe quelle touche pour démarrer la copie des fichiers
  • /p- Demande confirmation lors de la création de chaque fichier résultat.
  • /c- Ignore les erreurs.
  • /v- Vérifie chaque fichier copié par rapport à son original.
  • /q- Annule l'affichage des messages de commande xcopy.
  • /F- Affiche les noms des fichiers source et des fichiers de résultat lors de la copie.
  • /l- Affiche une liste des fichiers copiés.
  • /g- Génère des fichiers de résultats non cryptés.
  • /j[:mm-jj-aaaa]- Copie uniquement les fichiers modifiés à ou après la date indiquée. Si vous n'incluez pas la valeur mm-jj-aaaa, la commande xcopy copie tous les fichiers source qui sont plus récents que les fichiers de résultats existants. Cette fonctionnalité vous permet de mettre à jour uniquement les fichiers modifiés.
  • /u- Copie (met à jour) uniquement les fichiers source qui existent déjà dans le répertoire de résultats.
  • /je- Si la source est un répertoire ou si la source contient des caractères génériques et que le résultat n'existe pas, la commande xcopy suppose que le résultat est un nom de répertoire et crée un nouveau répertoire. xcopy copie ensuite tous les fichiers spécifiés dans un nouveau répertoire. Par défaut, la commande xcopy demande de confirmer si le paramètre de résultat est un répertoire ou un fichier.
  • /s- Copie les répertoires et sous-répertoires s'ils ne sont pas vides. Si l'option /s n'est pas spécifiée, la commande xcopy ne fonctionnera que sur un seul répertoire.
  • /e- Copie tous les sous-répertoires, y compris les vides. L'option /e est utilisée avec les options /s et /t.
  • /t- Copie uniquement la structure des sous-répertoires (c'est-à-dire l'arborescence), pas les fichiers. Pour copier des répertoires vides, spécifiez le commutateur /e.
  • /k- Copie les fichiers avec l'attribut lecture seule, en préservant cet attribut pour les fichiers copiés dont les originaux ont cet attribut. Par défaut, la commande xcopy supprime l'attribut en lecture seule.
  • /r- Copie les fichiers avec un attribut en lecture seule.
  • /h- Système de copies et fichiers cachés. Par défaut, la commande xcopy ne copie pas les fichiers système ou cachés.
  • /un- Copie uniquement les fichiers dont l'attribut "archive" est défini. L'utilisation de l'option /a ne modifie pas l'attribut "archive" des fichiers source. Pour plus d'informations sur la définition des attributs à l'aide de la commande attrib, consultez le lien Voir aussi. même".
  • /m- Copie uniquement les fichiers dont l'attribut "archive" est défini. Contrairement à l'option /a, l'option /m efface l'attribut "archive" des fichiers copiés. Pour plus d'informations sur la définition des attributs à l'aide de la commande attrib, consultez le lien Voir aussi. même".
  • /n- Copies utilisant des noms de fichiers courts Systèmes NTFS. L'option /n est requise lors de la copie d'un système de fichiers NTFS vers un système de fichiers. Système FAT ou lorsque le lecteur de destination nécessite l'utilisation d'une convention de dénomination de fichier FAT (8.3). Les fichiers peuvent être écrits dans système de fichiers FAT ou NTFS.
  • /o- Copie la propriété des fichiers et les informations de la table de contrôle d'accès sélectif (DACL).
  • /X- Copie les informations sur les paramètres d'audit des fichiers et tableau système contrôle d'accès (SACL) (en supposant /p).
  • /exclude:fichier1[+[fichier2]][+[fichier3]]- Spécifie une liste de fichiers contenant des chaînes.
  • /y- Élimine le problème d'une demande de confirmation pour écraser un fichier cible existant.
  • /-y- Émet une demande de confirmation pour écraser un fichier cible existant.
  • /z- Copies sur le réseau en mode redémarrage.

Exemples de commande XCOPY

Pour copier tous les fichiers et sous-répertoires (y compris les sous-répertoires vides) du lecteur D vers le lecteur E, tapez.

Et dans cet article, j'envisagerai de remplacer et de copier des fichiers via la ligne de commande, à savoir les utilitaires COPY et REPLACE. Mais d'abord, comme toujours, quelques paroles muettes.

Peut-être que n'importe quel programmeur a été confronté au problème d'écrire une fonction pour copier un répertoire avec des fichiers. En règle générale, ces problèmes ont été résolus en utilisant la récursivité. Autrefois, il n'y avait pas de souris ni de clic droit avec l'onglet "copier, couper, coller", et le Volkov bleu n'apparaissait pas immédiatement. Tout est si familier maintenant, vous vous asseyez au clavier, le collez dans le champ vert de Windows, cliquez là, cliquez ici, et c'est tout, le problème est résolu. Mais, il y avait aussi des situations difficiles où il fallait recourir à un manager bleu. Aussi étrange que cela puisse paraître, la ligne de commande et ses utilitaires changent d'apparence d'une version à l'autre. Il existe même tout un ensemble d'utilitaires comme PsUtils qui sont plus efficaces que ceux de DOS standard. La question logique est de savoir qui a besoin de tout cela ! A quoi bon inventer un dinosaure moderne, yop te ! D'un autre côté, telle est notre nature humaine, nous sommes même prêts à réinventer la roue, histoire de nous occuper l'esprit.

COPIER la ligne de commande

Ce chef-d'œuvre de la pensée humaine permet de copier (copier) via la ligne de commande un ou plusieurs fichiers, voire leur concaténation (combining). Pour résoudre ces problèmes, le serveur de script fournit une méthode de l'objet FileSystemObject. La syntaxe de l'utilitaire de ligne de commande de copie est plutôt décourageante :

COPIER source [+ source [+ ...]] [résultat]

Commençons:

/RÉ- indique la possibilité de créer un fichier crypté.

/Y | /-Y- si le premier paramètre est sélectionné, il n'y aura pas de demande de confirmation du système lors de la copie (en d'autres termes, si vous devez copier 1000 fichiers dans un four, alors l'ennuyeux " Êtes-vous sûr ou appelez-vous un ami ?”), il est clair que le deuxième paramètre inclut juste une demande de confirmation.

/Z- vous permet de copier des données sur le réseau, soit dit en passant, dans les versions précédentes de cet utilitaire, cette clé n'était pas respectée.

/ET- indique que le fichier est un fichier texte, si nous spécifions paramètre donné, la copie s'arrêtera à la marque de fin de fichier code ASCII 26.

Si ce paramètre est spécifié à la toute fin, l'effet est complètement différent. qui va se passer copie complète document, mais la marque de fin de fichier sera ajoutée à la copie si elle n'y était pas. En conséquence, vous pouvez essayer d'expérimenter avec documents pdf(mon_fichier.pdf - la taille du document est de 247217 octets) :

copier mon_fichier.pdf/Un nouveau_fichier.pdf- en sortie nous aurons un document new_file.pdf d'une taille de 2538 octets.

/Bclé donnée va par défaut et indique que le fichier est binaire. C'est-à-dire que le document entier est copié.

/V– cette option permet de vérifier l'exactitude de la copie en comparant les données une fois la procédure terminée.

Et donc la ligne de commande, la copie de fichiers et quelques exemples :

Copie du fichier 123.txt du répertoire courant vers le répertoire D:\NEW sous le même nom via la ligne de commande :

COPIER 123.txt D:\NOUVEAU

Copie du fichier 123.txt du répertoire courant vers le répertoire D:\NEW sous le nouveau nom new.txt :

COPIER 123.txt D:\NOUVEAU\nouveau.txt

Copiez tous les documents avec l'extension .txt du lecteur D:\ vers le répertoire Mes données sur le lecteur C :

COPIER D:\*.txt "C:\Mes données"

Supposons que nous soyons dans le répertoire D:\NEW et que nous devions y copier toutes les données du répertoire C:\DATA, auquel cas il suffit d'écrire la syntaxe suivante :

COPIER C:\DONNEES *.*

En utilisant la ligne de commande, les fichiers copiés peuvent être collés ensemble. À ces fins, il suffit d'utiliser le signe plus "+", par exemple :

COPIER 1.txt +2.txt 3.txt- dans cet exemple le contenu des documents 1.txt et 2.txt a été fusionné en 3.txt. Il convient de rappeler que par défaut, l'utilitaire COPY traite les données comme du texte.

Voici un exemple avec des données binaires :

COPIER /TO *.dat tous.dat- dans cette option toutes les données de extension de données du dossier actuel ont été fusionnés en un seul fichier all.dat.

En général, en utilisant le symbole plus "+" et des pensées comme "et si", vous pouvez faire quelques expériences. Il convient également de rappeler un certain nombre de points :

Si le nom de l'objet cible correspond à l'un de ceux copiés (à l'exception du premier), le contenu original de l'objet cible sera perdu.

Si le nom de l'objet cible est omis, le premier objet de la liste sera utilisé comme nom :.

COPIER 1.txt+,– cette construction permet d'affecter la date courante à l'objet 1.txt sans le modifier.

L'utilitaire COPY, dans sa supériorité, contient un certain nombre d'inconvénients :

  • vous ne pouvez pas copier de fichiers via la ligne de commande avec les attributs cachés ou système, ainsi que les fichiers système et en lecture seule.
  • interruption de tout le processus de copie lorsqu'il rencontre un objet ce moment ne peut pas être copié.

En raison de ces inconvénients, personnes intelligentes pensé, et a ajouté la lettre X au nom COPY, ce qui a résolu beaucoup de problèmes en créant .

Remplacer la ligne de commande

En fait, la différence entre cet utilitaire est qu'il peut remplacer les données. La syntaxe est assez simple et claire :

REMPLACER [drive1 :][path1]filename [drive2 :] [path2]

REMPLACER [drive1 :][path1]filename [drive2 :] [path2]

[lecteur1 :] [chemin1]nom du fichier – déterminer l'emplacement de l'objet ou des objets copiés.

[lecteur2 :] [chemin2] - déterminer l'emplacement de l'objet résultat. Comme vous pouvez le voir, les noms des objets remplacés ne peuvent pas être spécifiés.

/ET– ajouter au répertoire de résultats uniquement les nouveaux objets du répertoire de résultats (sans écraser). Cette clé ne peut pas être utilisée avec des clés /S et /u.

/R- Un message de confirmation s'affiche avant de remplacer la cible ou d'ajouter le fichier source.

/R- remplacement non seulement des documents ordinaires, mais également des documents protégés en écriture.

/S– vous permet de rechercher dans tous les sous-répertoires du répertoire cible et de remplacer les fichiers par des noms correspondants. Cette clé ne peut pas être utilisée avec une clé /ET. Les répertoires spécifiés par le paramètre path1 ne sont pas parcourus.

/W- attendre l'insertion du disque avant de commencer l'exécution

/U– mode mise à jour, c'est-à-dire que seuls les objets qui ont plus de rendez-vous précoce modifications. Incompatibilité clé /UN.

Remplacez D:\Data\my_file.txt D:\Work– dans le dossier Work, remplacez le fichier my_file.txt par D:\Data\my_file.txt

Lors de la copie de fichiers via la ligne de commande à l'aide de l'utilitaire REPLACE, il n'existe aucun moyen de mettre à jour les fichiers cachés ou système. Pour ce faire, vous devez d'abord modifier leurs attributs.

Une liste complète des commandes peut être affichée en tapant AIDE à l'invite de commande.

L'équipe CD

Le répertoire courant peut être changé avec la commande

CD [lecteur :][chemin\]

Le chemin vers le répertoire requis est spécifié en tenant compte des remarques ci-dessus. Par exemple, la commande CD \ passe au répertoire racine du lecteur actuel. Si vous exécutez la commande CD sans paramètres, les noms du lecteur et du répertoire actuels s'afficheront à l'écran.

Commande COPIER

L'une des tâches les plus répétitives lorsque vous travaillez sur un ordinateur consiste à copier et à déplacer des fichiers d'un endroit à un autre. La commande COPY permet de copier un ou plusieurs fichiers.

La syntaxe de cette commande est :

COPIER source [+ source [+ ...]] [résultat]

Brève description les paramètres et les touches de la commande COPY sont donnés dans le tableau.

Tableau 1.1. Options et options de la commande COPY

Paramètre

La description

une source

Le nom du ou des fichiers copiés

Le fichier est un fichier texte ASCII, c'est-à-dire que la fin du fichier est indiquée par le caractère avec le code ASCII 26 ( +)

Le fichier est binaire. Ce commutateur spécifie que l'interpréteur de commandes doit, lors de la copie, lire à partir de la source le nombre d'octets taille donnée dans le répertoire du fichier copié

résultat

Répertoire où placer le résultat de la copie et/ou nom du fichier à créer

Vérification de l'exactitude de la copie en comparant les fichiers après la copie

Désactiver le mode de demande de confirmation pour remplacer les fichiers

Activation du mode de demande de confirmation pour remplacer les fichiers

Voici des exemples d'utilisation de la commande COPIER.

Copie du fichier abc.txt du répertoire courant vers le répertoire D:\PROGRAM sous le même nom :

COPIER abc.txt D:\PROGRAMME

Copie du fichier abc.txt du répertoire courant vers le répertoire D:\PROGRAM sous le nouveau nom def.txt :

COPIER abc.txt D:\PROGRAM\def.txt

Copie de tous les fichiers avec l'extension .txt du lecteur A : vers le répertoire "Mes documents" sur le lecteur C :

COPIER A:\*.txt "C:\Mes Documents"

Si vous ne spécifiez pas de fichier cible dans la commande, la commande COPY créera une copie du fichier source avec le même nom, la même date et heure de création que le fichier source et le lieu un nouvel exemplaire dans le répertoire courant sur le lecteur courant. Par exemple, pour copier tous les fichiers du répertoire racine du lecteur A : vers le répertoire courant, il suffit d'exécuter la courte commande suivante :

COPIER A :\*.*

En tant que source ou résultat lors de la copie, vous pouvez spécifier les noms non seulement des fichiers, mais également des périphériques informatiques. Par exemple, pour imprimer le fichier abc.txt sur une imprimante, vous pouvez utiliser la commande pour copier ce fichier sur le périphérique PRN : COPY abc.txt PRN

Une autre exemple intéressant: créer un nouveau fichier texte et y écrire des informations, sans utiliser éditeur de texte. Pour cela, il suffit d'entrer la commande COPY CON my.txt, qui copiera ce que vous tapez au clavier dans le fichier my.txt (si ce fichier existait, il sera écrasé, sinon il sera créé). Pour terminer la saisie, vous devez entrer le caractère de fin de fichier, c'est-à-dire appuyer sur les touches +.

La commande COPY peut également fusionner (coller) plusieurs fichiers en un seul. Pour ce faire, vous devez spécifier un seul fichier résultant et plusieurs fichiers sources. Ceci est réalisé en utilisant des caractères génériques (? et *) ou le format fichier1 + fichier2 + fichier3. Par exemple, pour fusionner les fichiers 1.txt et 2.txt dans le fichier 3.txt, vous pouvez émettre la commande suivante :

COPIER 1.txt+2.txt 3.txt

La combinaison de tous les fichiers dat du répertoire courant en un seul fichier all.dat peut être effectuée comme ceci :

COPIER /B *.dat tous.dat

Le commutateur /B est utilisé ici pour empêcher la troncation des fichiers connectés, car lors de la combinaison de fichiers, la commande COPY considère les fichiers texte par défaut.

Si le nom du fichier cible correspond au nom de l'un des fichiers copiés (à l'exception du premier), le contenu original du fichier cible est perdu. Si le nom de fichier cible est omis, le premier fichier de la liste est utilisé comme nom de fichier cible. Par exemple, la commande COPY 1.txt+2.txt ajoutera le contenu du fichier 2.txt au contenu du fichier 1.txt. La commande COPY peut également être utilisée pour affecter la date et l'heure courantes à un fichier sans modifier son contenu. Pour ce faire, vous devez entrer une commande comme

COPIER /B 1.txt+,

Ici, les virgules indiquent l'omission du paramètre récepteur, ce qui conduit au résultat souhaité.

La commande COPY a aussi ses inconvénients. Par exemple, il ne peut pas être utilisé pour copier masqué et fichiers système, fichiers de longueur nulle, fichiers de sous-répertoires. De plus, si, lors de la copie d'un groupe de fichiers, COPY rencontre un fichier qui ne peut pas être copié pour le moment (par exemple, il est occupé par une autre application), le processus de copie sera complètement interrompu et les fichiers restants ne seront pas copiés. .

Équipe XCOPY

Les problèmes mentionnés dans la description de la commande COPY peuvent être résolus à l'aide de la commande XCOPY, qui offre de nombreuses autres options lors de la copie. Il convient de noter, cependant, que XCOPY ne peut fonctionner qu'avec des fichiers et des répertoires, pas avec des périphériques.

La syntaxe de cette commande est :

Source XCOPY [résultat] [touches]

La commande XCOPY a de nombreuses touches, nous n'en aborderons que quelques-unes. Le commutateur /D[:[date]] vous permet de copier uniquement les fichiers qui ont été modifiés à la date spécifiée ou après. Si le paramètre date n'est pas spécifié, la copie ne sera effectuée que si la source est plus récente que le résultat. Par exemple, la commande

XCOPY "C:\Mes documents\*.*" "D:\SAUVEGARDE\Mes documents" /D

copiera dans le répertoire "D:\BACKUP\Mes Documents" uniquement les fichiers du répertoire "C:\Mes Documents" qui ont été modifiés depuis la dernière copie ou qui n'existaient pas dans le répertoire "D:\BACKUP\Mes Documents " répertoire du tout.

Le commutateur /S vous permet de copier tous les sous-répertoires non vides dans le répertoire source. À l'aide du commutateur /E, vous pouvez copier tous les sous-répertoires en général, y compris les vides.

Si le commutateur /C est spécifié, la copie se poursuivra même si des erreurs se produisent. Ceci est très utile pour les opérations de copie effectuées sur des groupes de fichiers, par exemple, lorsque sauvegarde Les données.

Le commutateur /I est important lorsque plusieurs fichiers sont copiés et que le fichier de destination est manquant. Lorsque ce commutateur est spécifié, la commande XCOPY suppose que le fichier de destination doit être un répertoire. Par exemple, si vous spécifiez le commutateur /I dans la commande pour copier tous les fichiers avec l'extension txt du répertoire actuel vers le sous-répertoire TEXT qui n'existe pas encore,

XCOPY *.txt TEXTE /I

alors le sous-répertoire TEXT sera créé sans autre demande.

Les touches /Q, /F et /L sont responsables du mode d'affichage lors de la copie. Lors de la spécification de la touche /Q, les noms de fichiers ne s'affichent pas lors de la copie, la touche /F - s'affiche chemins complets origine et résultat. Le commutateur /L signifie que seuls les fichiers qui doivent être copiés sont affichés (la copie elle-même n'est pas effectuée).

À l'aide du commutateur /H, vous pouvez copier des fichiers cachés et système, et à l'aide du commutateur /R, vous pouvez remplacer les fichiers par l'attribut "Lecture seule". Par exemple, pour copier tous les fichiers du répertoire racine du lecteur C: (y compris les fichiers système et cachés) vers le répertoire SYS du lecteur D:, entrez la commande suivante :

XCOPY C:\*.* D:\SYS /H

Le commutateur /T permet à XCOPY de copier uniquement la structure du répertoire source, sans dupliquer les fichiers dans ces répertoires, et les répertoires et sous-répertoires vides ne sont pas inclus. Afin de toujours inclure des répertoires et sous-répertoires vides, vous devez utiliser la combinaison de commutateurs /T /E.

En utilisant XCOPY, vous ne pouvez mettre à jour que les fichiers existants lors de la copie (les nouveaux fichiers ne sont pas écrits). Le commutateur /U est utilisé pour cela. Par exemple, si les fichiers a.txt et b.txt se trouvaient dans le répertoire C:\2 et que les fichiers a.txt, b.txt, c.txt et d.txt se trouvaient dans le répertoire C:\1, puis après avoir exécuté la commande

XCOPY C:\1 C:\2 /U

seuls deux fichiers a.txt et b.txt resteront dans le répertoire C:\2, dont le contenu sera remplacé par le contenu des fichiers correspondants du répertoire C:\1. Si un fichier avec l'option "Lecture seule " L'attribut a été copié à l'aide de XCOPY, puis Par défaut, cet attribut sera supprimé du fichier de copie. Pour copier non seulement les données, mais également tous les attributs du fichier, vous devez utiliser le commutateur /K.

Les commutateurs /Y et /-Y déterminent s'il faut demander une confirmation avant de remplacer les fichiers lors de la copie. /Y signifie qu'une telle requête est nécessaire, /-Y - non nécessaire.

Commande DIR

Une autre commande très utile est DIR [drive:][path][filename] [switches], qui est utilisée pour afficher des informations sur le contenu des lecteurs et des répertoires. Le paramètre [drive:][path] spécifie le lecteur et le répertoire dont le contenu doit être affiché. Le paramètre [filename] spécifie le fichier ou le groupe de fichiers à inclure dans la liste. Par exemple, la commande

DIR C:\*.bat

affichera tous les fichiers avec rallonge de chauve-souris dans répertoire racine lecteur C :. Si vous lancez cette commande sans paramètres, alors le label du disque et son numéro de série, les noms (en version courte et longue) des fichiers et sous-répertoires situés dans le répertoire courant, ainsi que la date et l'heure de leur dernière modification sont affichés. Il affiche ensuite le nombre de fichiers dans le répertoire, la taille totale (en octets) occupée par les fichiers et la taille espace libre sur disque. Par example:

Le volume de l'appareil C est étiqueté PHYS1_PART2 Numéro de série volumes : 366D-6107 Le contenu du dossier C:\aditor.<ПАПКА> 25.01.00 17:15 . .. <ПАПКА>25/01/00 17:15 .. TEMPLT02 DAT 227 07/08/98 01:00 templt02.dat UNINST1 000 1 093 02/03/99 8:36 UNINST1.000 HILITE DAT 1 082 18/09/98 06:55 hilite.dat TEMPLT01 DAT TEMPLT01 TEMPLT01 008 4 .98 1:00 templt01.dat UNINST0 000 40 960 15/04/98 2:08 UNINST0.000 TTABLE DAT 357 07/08/98 1:00 ttable.dat ADITOR EXE 461 312 12/01/99 23:13 aditor.exe README TXT 3 974 01/25/00 17:26 readme.txt ADITOR HLP 24 594 10/08/98 23:12 aditor.hlp TEXT~1 TXT 0 03/11/01 9:02 Fichier texte.txt 11 fichiers 533 647 octets 2 dossiers 143 261 696 octets libres

Avec les commutateurs de commande DIR, vous pouvez définir divers modes emplacement, filtrage et tri. Par exemple, lors de l'utilisation du commutateur /W, la liste des fichiers s'affiche dans un format large avec autant de noms de fichiers ou de répertoires que possible sur chaque ligne. Par example:

Le volume sur le périphérique C est étiqueté PHYS1_PART2 Numéro de série du volume : 366D-6107 Contenu du dossier C:\aditor [.] [..] TEMPLT02.DAT UNINST1.000 HILITE.DAT TEMPLT01.DAT UNINST0.000 TTABLE.DAT ADITOR.EXE LISEZMOI .TXT ADITOR.HLP TEXT~1.TXT 11 fichiers 533 647 octets 2 dossiers 143 257 600 octets libres

En utilisant la clé /A[[:]attributes], vous pouvez afficher les noms des seuls répertoires et fichiers qui ont les attributs spécifiés (R - "Lecture seule", A - "Archive", S - "Système", H - "Caché", le préfixe "-" a le sens NON). Si le commutateur /A est utilisé avec plus d'une valeur d'attribut, seuls les noms des fichiers qui ont tous les mêmes attributs que ceux donnés seront affichés. Par exemple, pour afficher les noms de tous les fichiers du répertoire racine du lecteur C: qui sont à la fois des fichiers cachés et des fichiers système, vous pouvez utiliser la commande

DIR C:\ /A:HS

et pour afficher tous les fichiers sauf ceux cachés - la commande

DIR C:\ /A:-H

Nous notons ici que la lettre D correspond à l'attribut répertoire, c'est-à-dire que pour, par exemple, afficher une liste de tous les répertoires sur le lecteur C:, vous devez émettre la commande

DIR C: /A:D

Le commutateur /O[[:]sort] spécifie l'ordre de tri du contenu du répertoire lors de sa sortie avec la commande DIR. Si ce commutateur est omis, DIR imprime les noms des fichiers et des répertoires dans l'ordre dans lequel ils apparaissent dans le répertoire. Si le commutateur /O est spécifié et que l'option de tri n'est pas spécifiée, alors DIR affiche les noms dans ordre alphabétique. Vous pouvez utiliser les valeurs suivantes dans le paramètre de tri : N - par nom (alphabétique), S - par taille (le plus bas en premier), E - par extension (alphabétique), D - par date (le plus ancien en premier), A - par date de téléchargement (en commençant par les plus anciens), G - commencer la liste avec des répertoires. Le préfixe "-" signifie l'ordre inverse. Si plusieurs valeurs d'ordre de tri sont spécifiées, les fichiers sont triés selon le premier critère, puis selon le second, et ainsi de suite.

Le commutateur /S signifie afficher une liste de fichiers du répertoire spécifié et de ses sous-répertoires.

Le commutateur /B répertorie uniquement les noms de répertoires et les noms de fichiers (au format long), un par ligne, y compris l'extension. Dans ce cas, seules les informations principales sont affichées, sans la dernière. Par example:

Templt02.dat UNINST1.000 hilite.dat templt01.dat UNINST0.000 ttable.dat aditor.exe readme.txt aditor.hlp Fichier texte.txt

Commandes MKDIR et RMDIR

Pour créer un nouveau répertoire et supprimer un répertoire vide déjà existant, utilisez respectivement les commandes MKDIR [drive:]path et RMDIR [drive:]path [switches] (ou leurs équivalents abrégés MD et RD). Par example:

MKDIR "C:\Exemples" RMDIR "C:\Exemples"

La commande MKDIR ne peut pas être exécutée si un répertoire ou un fichier avec prénom existe déjà. La commande RMDIR échouera si le répertoire en cours de suppression n'est pas vide.

L'équipe DEL

Vous pouvez supprimer un ou plusieurs fichiers avec la commande

DEL [lecteur :][chemin]nom du fichier [commutateurs]

Les caractères génériques sont-ils utilisés pour supprimer plusieurs fichiers à la fois ? et *. Le commutateur /S vous permet de supprimer les fichiers spécifiés de tous les sous-répertoires, le commutateur /F - pour forcer la suppression des fichiers en lecture seule, le commutateur /A[[:]attributs] - pour sélectionner les fichiers à supprimer par attributs (similaire au commutateur /A[[:]attributes). ] dans la commande DIR).

L'équipe REN

Vous pouvez renommer des fichiers et des répertoires avec la commande RENAME (REN). La syntaxe de cette commande est la suivante :

REN [lecteur :][chemin][répertoire1|fichier1] [répertoire2|fichier2]

Ici, répertoire1|fichier1 spécifie le nom de répertoire/fichier à modifier et répertoire2|fichier2 spécifie le nouveau nom de répertoire/fichier. Les caractères génériques peuvent-ils être utilisés dans n'importe quel paramètre de la commande REN ? et *. Dans ce cas, les caractères représentés par les modèles dans le paramètre fichier2 seront identiques aux caractères correspondants dans le paramètre fichier1. Par exemple, pour remplacer l'extension de tous les fichiers .txt du répertoire actuel par doc, saisissez la commande suivante :

REN *.txt *.doc

Si un fichier nommé fichier2 existe déjà, la commande REN s'arrêtera et un message sera imprimé indiquant que le fichier existe déjà ou est en cours d'utilisation. De plus, la commande REN ne peut pas spécifier un lecteur ou un répertoire différent pour créer le répertoire et le fichier résultants. Pour cela, vous devez utiliser la commande MOVE, conçue pour renommer et déplacer des fichiers et des répertoires.

Commande DEPLACER

La syntaxe de commande pour déplacer un ou plusieurs fichiers est :

MOVE [lecteur :][chemin]nomfichier1[,...] fichier_résultant

La syntaxe de commande pour renommer un dossier est :

MOVE [drive:][path]dir1 dir2

Ici, result_file spécifie le nouvel emplacement du fichier et peut inclure un nom de lecteur, deux-points, un nom de répertoire ou une combinaison des deux. Si un seul fichier est déplacé, il est permis de spécifier son nouveau nom. Cela vous permet de déplacer et de renommer immédiatement le fichier. Par example,

MOVE "C:\Mes Documents\list.txt" D:\list.txt

Si le commutateur /-Y est spécifié, lors de la création de répertoires et du remplacement de fichiers, un message de confirmation sera émis. Le commutateur /Y annule l'émission d'une telle requête.

Copiez un ou plusieurs fichiers d'un emplacement à un autre.

Syntaxe

copie [/ré] [/v] [/n] [{/y|/-y}] [/z] [{/un|/b}] une source [{/un|/b}] [+ une source [{/un|/b}] [ + ...]] [rendez-vous [{/un|/b}]]

Choix

/d Enregistre les fichiers chiffrés copiés comme étant déchiffrés à la destination. /v Vérifiez que la copie est correcte en comparant les copies de fichiers. /n Utilisez le nom court (si disponible) du fichier copié si son nom comporte plus de 8 caractères ou si son extension comporte plus de 3 caractères. /y Annule l'invite de remplacement d'un fichier de destination existant. /-y Demande de confirmation pour écraser un fichier de destination existant. /z Copie les fichiers sur le réseau en mode redémarrage. /a Spécifie un fichier texte ASCII. /b Spécifie un fichier binaire. Source Obligatoire. Spécifie l'emplacement du fichier ou de l'ensemble de fichiers que vous souhaitez copier. Paramètre une source peut consister en un nom de lecteur suivi de deux-points, d'un nom de dossier, d'un nom de fichier ou d'une combinaison des deux. destination Obligatoire. Spécifie l'emplacement vers lequel vous souhaitez copier le fichier ou l'ensemble de fichiers. Paramètre rendez-vous peut consister en un nom de lecteur suivi de deux-points, nom de dossier, nom de fichier ou une combinaison des deux. /? Afficher l'aide sur la ligne de commande.

Remarques

  • Il est possible de copier un fichier texte qui utilise le caractère de fin de fichier (CTRL+Z) pour indiquer la fin du fichier.
  • Utilisation d'un paramètre /un

    Si le paramètre /un /b commandes copie. Dans ce cas /b /b.

    Si le paramètre /un /b commandes copie. Dans ce cas /b appliqué au dossier avant /b.

    /un /un vient après le paramètre une source, commande copie traite le fichier comme un fichier texte ASCII et copie les données qui précèdent le premier caractère de fin de fichier.

    Si le paramètre /un situé après le paramètre rendez-vous, commande copie ajoute un caractère de fin de fichier comme dernier caractère du fichier.

  • Utilisation d'un paramètre /b

    Paramètre /b indique au shell de lire le nombre d'octets égal à la taille du fichier dans le répertoire. Paramètre /b défini par défaut pour la commande copie, sauf lors de l'utilisation copie pour fusionner des fichiers.

    Si le paramètre /b apparaît avant une liste de fichiers sur la ligne de commande, il s'applique à tous les fichiers listés avant le paramètre /un commandes copie. Dans ce cas /un appliqué au dossier avant /un.

    Si le paramètre /b apparaît après la liste des fichiers sur la ligne de commande, il s'applique à tous les fichiers listés avant le paramètre /un commandes copie. Dans ce cas /un appliqué au dossier avant /un.

    Le résultat de l'application du paramètre /b dépend de sa position sur la ligne de commande. Si le paramètre /b vient après le paramètre une source, commande copie copie le fichier entier, y compris tous les caractères de fin de ligne.

    Si le paramètre /b vient après le paramètre rendez-vous, commande copie n'ajoute pas de caractère de fin de ligne.

  • Utilisation d'un paramètre /v

    Si l'opération d'écriture ne peut pas être vérifiée, un message d'erreur s'affiche. Bien que les erreurs d'écriture se produisent rarement lors de l'utilisation de la commande copie, paramètre /v peut être utilisé pour vérifier que les données importantes ont été enregistrées correctement. Paramètre /v quitte également la commande copie, puisqu'il est nécessaire de vérifier chaque secteur écrit sur le disque.

  • Utiliser des paramètres /y et /-y

    Si le paramètre /y est défini à l'avance dans la variable d'environnement COPYCMD, vous pouvez remplacer ce paramètre en spécifiant le paramètre /-y sur la ligne de commande. Si vous remplacez ce paramètre, vous serez invité par défaut, sauf lorsque vous exécutez la commande copie dans un fichier batch.

  • Combiner des fichiers

    Pour fusionner des fichiers, spécifiez un fichier dans le paramètre rendez-vous et plusieurs en paramètre une source(en utilisant des caractères génériques ou le format fichier1+ fichier2+ fichier3).

  • Utilisation d'un paramètre /z

    Si pendant la phase de copie est perdu connexion réseau(par exemple, si le serveur va à mode hors-ligne, rompant la connexion), commande copier /z vous permet de continuer la copie une fois la connexion rétablie. De plus, le paramètre /z vous permet d'afficher des informations sur l'achèvement de l'opération de copie sous forme de pourcentage pour chaque fichier.

  • Usage périphériques externes dans les opérations de copie

    Comme paramètres une source et rendez-vous Vous pouvez spécifier des noms de périphérique.

  • Utilisation d'un paramètre /b lors de la copie sur l'appareil

    Si dans le paramètre rendez-vous l'équipement est spécifié (par exemple, Com1 ou Lpt1), le paramètre /b vous permet de copier des données sur cet appareil en mode binaire. En mode binaire, la commande copier /b copie tous les caractères (y compris les caractères de contrôle tels que CTRL+C, CTRL+S, CTRL+Z et saut de ligne) sur l'appareil en tant que données. Cependant, si le paramètre /b n'est pas spécifié, les données sont copiées sur l'appareil au format ASCII. Dans ce mode, les caractères de contrôle peuvent entraîner la fusion de fichiers dans Système Windows XP en cours de copie. Pour plus d'informations, consultez la section "Fusionner des fichiers".

  • Utilisation d'un nom de fichier cible standard

    Si fichier cible n'est pas défini, par défaut les fichiers seront copiés avec le même nom, date et heure de création dans le répertoire courant sur le lecteur courant. Si le fichier source se trouve dans le répertoire courant sur le lecteur courant, exécuter la commande copie quitte et affiche le message d'erreur suivant :

    Impossible de copier le fichier sur lui-même

    Fichiers copiés : 0

  • Fusionner des fichiers

    Si plusieurs paramètres sont saisis une source, séparés par un signe plus (+), commande copie concatène les fichiers en un seul. Si dans le paramètre une source des caractères génériques (* ou ?) sont utilisés, et dans le paramètre rendez-vousétant donné un fichier, commande copie concatènera tous les fichiers correspondant au modèle dans le paramètre une source, en un avec le nom spécifié dans le paramètre rendez-vous. Dans les deux cas, si le paramètre n'est pas défini /b, commande copie concatène les fichiers sous forme de texte.

  • Copie de fichiers de longueur nulle

    Commande Copie ne copie pas les fichiers de 0 octet de long. Pour effectuer cette opération, utilisez la commande xcopie.

  • Modification de la date et de l'heure de modification d'un fichier

    Si vous souhaitez définir la date et l'heure actuelles comme date de modification d'un fichier sans modifier son contenu, utilisez la syntaxe suivante :

    copier /b une source+ ,

    Les virgules remplacent le paramètre rendez-vous.

  • Copier des fichiers dans des sous-répertoires

    Pour copier tous les fichiers d'un répertoire et de ses sous-répertoires, utilisez la commande xcopie. Informations complémentaires sur l'équipe xcopie voir .

  • Commande copie avec d'autres options est disponible dans la console de récupération.

Exemples

Pour copier le fichier Memo.doc dans le fichier Letter.doc sur le lecteur actuel et vous assurer que le caractère de fin de fichier se trouve à la fin du fichier copié, tapez la commande suivante :

copier memo.doc lettre.doc /a

Pour copier le fichier Robin.typ du répertoire actuel sur le lecteur actuel vers le répertoire Birds existant sur le lecteur C, entrez la commande suivante :

copier robin.type c:\birds

Si le répertoire Birds n'existe pas, le fichier Robin.typ sera copié dans un fichier nommé Birds dans le répertoire racine du lecteur C.

Pour copier plusieurs fichiers en un seul, répertoriez plusieurs fichiers dans le paramètre une source, en séparant leurs noms par un signe plus (+), et précisez en paramètre rendez-vous un fichier qui doit contenir le résultat de la combinaison de ces fichiers. Par exemple, pour fusionner les fichiers Mar89.rpt, Apr89.rpt et May89.rpt du répertoire en cours sur le lecteur en cours et les placer dans un fichier de rapport dans le répertoire en cours sur le lecteur en cours, tapez la commande suivante :

copier le rapport mar89.rpt + apr89.rpt + may89.rpt

Lorsqu'elle est combinée, la commande copie crée le fichier final avec date actuelle et le temps. Si le paramètre rendez-vous n'est pas spécifié, les fichiers sont fusionnés et stockés dans un fichier portant le nom du premier fichier de la liste. Par exemple, pour fusionner quatre fichiers dans un fichier de rapport si un tel fichier existe déjà, entrez la commande suivante :

copie rapport + mar89.rpt + apr89.rpt + may89.rpt

De plus, plusieurs fichiers peuvent être combinés en un seul à l'aide de caractères génériques (* ou ?). Par exemple, pour combiner tous les fichiers .txt du répertoire actuel sur le lecteur actuel dans un fichier Combin.doc, tapez la commande suivante :

copier *.txt combin.doc

Si vous souhaitez fusionner plusieurs fichiers binaires en un seul à l'aide de caractères génériques, utilisez l'option /b. Par conséquent, CTRL+Z ne sera pas traité comme un caractère de fin de fichier dans Windows XP. Par exemple, entrez la commande suivante :

copier /b *.exe combin.exe

Attention!

  • Si les fichiers binaires sont fusionnés, le résultat peut ne pas être utilisable en raison de violations de formatage internes.

Dans l'exemple suivant, la commande copie concatène chaque fichier .txt avec son fichier .ref correspondant. Le résultat est un fichier portant le même nom mais avec une extension .doc. Ainsi la commande copie fusionnera File1.txt et File1.ref dans File1.doc, puis File2.txt et File2.ref dans File2.doc, etc. Par exemple, entrez la commande suivante :

copier *.txt + *.ref *.doc

Pour fusionner d'abord tous les fichiers .txt, puis tous les fichiers .ref dans un fichier Combin.doc, entrez la commande suivante.