Was ist der Vorteil von copy over xcopy in der Befehlszeile?

Ich weiß, dass xcopy mehr Optionen hat, aber gibt es Vorteile bei der Verwendung von copy anstelle von xcopy?

Author: Flyk, 2012-02-09

5 answers

  1. xcopy ist ein externes Programm, während copy Teil des Interpreters ist (cmd.exe, command.com). Dies bedeutet, dass xcopy möglicherweise nicht auf einem anderen Computer oder einer Rettungsdiskette vorhanden ist.

    Da wir Windows und Rettungs-CDs haben, ist das nicht mehr wirklich ein Problem.

  2. copy kann Dateien verketten.

    copy file1 + file2 file3
    

    Erstellt eine Datei (file3), die file1's und file2's enthält Inhalt.

  3. copy kann mehr als nur Dateien kopieren.

    Zum Beispiel

    copy con file
    
    Mit

    Können Sie direkt über die Tastatur (Konsole) in die - Datei schreiben.

    Ebenso können Sie eine Datei mit{[17] drucken]}

    copy file prn
    copy file \\computer\printer
    

    Wobei letzteres für freigegebene Drucker gilt.

    Sie können sogar das Obige kombinieren: Den Befehl

    copy con prn
    
    Mit

    Können Sie direkt auf den Drucker schreiben.

 43
Author: Dennis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-10-10 21:29:17

Ich denke, der Hauptunterschied besteht (oder war) darin, dass xcopy Ordnerhierarchien kopieren kann und copy nur für Dateien gedacht war.
Davon abgesehen glaube ich nicht, dass es irgendetwas zu gewinnen gibt (funktions - oder leistungsmäßig) von der Verwendung von copy.

Bitte beachten Sie, dass auch xcopy ist veraltet und wird mit den heutigen standards. Robocopy ist das neue Kopierprogramm der Wahl auf modernen Windows-Plattformen.

Beachten Sie auch, dass alle genannten Kopierdienstprogramme Wikipedia-Artikel enthalten, die könnte weitere Informationen enthalten:

 23
Author: Der Hochstapler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-02-09 12:23:51

Erinnert sich Jemand DOS auf dual-floppy-PCs? Xcopy minimiert die Anzahl der Lesevorgänge, indem mehrere Dateien bei einem einzigen Lesevorgang in den Speicher geladen werden, um die Kopie zu beschleunigen. Wahrscheinlich macht immer noch eine triviale Geschwindigkeitsverbesserung mit HDDs.

 1
Author: Bill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-01-10 00:48:54

Wenn Sie Powershell als "Befehlszeile" betrachten, ist ein weiterer Befehl "Kopieren" verfügbar. Die Powershell "copy" wird anscheinend einem Cmdlet zugeordnet.

Eine Sache, die von den anderen Antworten nicht erwähnt wird, ist, dass dieser Befehl funktioniert (nur von PS, nicht von DOS), da Powershell einen tief eingebetteten Platzhalter auf Shell-Ebene erweitert:

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

Während xcopy behauptet "Datei nicht gefunden", da es eine einzelne Quelle akzeptiert.

 0
Author: crokusek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-01-03 03:04:21

Ein Befehlszeilenargument, auf das zwischen copy und xcopy geachtet werden muss, ist /V.

Während xcopy ' s help states / V xcopy Quell-und Zieldateigrößen vergleichen lässt, gibt copy nicht die Methode an, mit der überprüft wird, ob die Kopie korrekt war.

Ich vermute, weiß aber nicht, ob der interne Befehl copy, der in erster Linie ein Dateibefehl oder ein Verzeichnisbefehl ist, CRC oder binary compare verwendet, um die kopierte Datei zu überprüfen.

 0
Author: DevPlayer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-12-07 10:22:46