web-dev-qa-db-fra.com

Quel est l'avantage de copier sur xcopy sur la ligne de commande?

Je sais que xcopy a plus d'options, mais y a-t-il des avantages à utiliser copy plutôt que xcopy?

30
Phil Hannent
  1. xcopy est un programme externe, alors que copy fait partie de l'interpréteur ( cmd.exe , command.com ). Cela signifie que xcopy peut ne pas être présent sur une autre machine ou un disque de secours.

    Depuis que nous avons Windows et les CD de secours, ce n'est plus vraiment un problème.

  2. copy peut concaténer des fichiers.

    copy file1 + file2 file3
    

    crée un fichier ( file3 ) qui contient file1 's et le contenu de file2 .

  3. copier peut copier plus que des fichiers.

    Par exemple,

    copy con file
    

    vous permet d'écrire directement depuis le clavier (console) dans le fichier .

    De même, vous pouvez imprimer un fichier en utilisant

    copy file prn
    copy file \\computer\printer
    

    où ce dernier est destiné aux imprimantes partagées.

    Vous pouvez même combiner ce qui précède: La commande

    copy con prn
    

    vous permet d’écrire directement sur l’imprimante.

37
Dennis

Je pense que la principale différence est (ou était) que xcopy est capable de copier des hiérarchies de dossiers et que copy était destiné à fonctionner uniquement sur des fichiers.
Cela étant dit, je ne pense pas que l’utilisation de copy présente un avantage (en termes de fonctionnalités ou de performances).

Veuillez noter que même la variable xcopy est obsolète par rapport aux normes actuelles. Robocopy est le nouvel utilitaire de copie de choix sur les plates-formes Windows modernes.

Notez également que tous les utilitaires de copie mentionnés ont des articles Wikipedia qui pourraient contenir des informations supplémentaires:

21
Der Hochstapler

Quelqu'un se souvient de DOS sur un PC à double disquette? Xcopy réduit le nombre de recherches en chargeant plusieurs fichiers en mémoire sur une seule lecture pour accélérer la copie. Probablement encore fait une amélioration de vitesse triviale avec les disques durs.

0
Bill

Si vous considérez Powershell comme une "ligne de commande", une autre commande "de copie" est disponible. La "copie" de Powershell correspond apparemment à une cmdlet.

Une autre chose qui n’a pas été mentionnée dans les autres réponses est que, puisque Powershell développe un caractère générique profondément intégré au niveau du shell, cette commande fonctionnera (uniquement à partir de PS et non de DOS):

% copy G:\git\one\source\*\morePath\SomePattern*.dll destDir

tandis que xcopy prétend "fichier non trouvé" car il accepte une source unique.

0
crokusek