HOWTO · Batch
XCOPY Überschreiben im Batch
Dieses Tutorial zeigt, wie man XCOPY im Batch verwendet, um vorhandene Dateien zu überschreiben, einschließlich des Überschreibens aller Dateien ohne Rückfrage.
Auf dieser Seite
Xcopy ist ein Befehlszeilenprogramm, mit dem eine oder mehrere Dateien oder Verzeichnisse, einschließlich Unterverzeichnisse, von einem Ort an einen anderen kopiert werden. Es ähnelt dem Befehl copy, ist aber leistungsfähiger, da es ganze Verzeichnisse von einem Ort an einen anderen kopieren kann.
Es ist leistungsfähig genug, um sogar Laufwerke zu kopieren. Xcopy ist ein schneller Befehl, der Dateien und Ordner kopieren, vorhandene Dateien mit oder ohne Rückfrage überschreiben, Dateien nach Name, Pfad oder Erweiterung ausschließen, aktualisierte Dateien erkennen kann usw.
Es wird in fast allen Windows-Versionen ab Windows 98 unterstützt. Es kann als DOS-Befehl verwendet werden, um xcopy in MS-DOS zu nutzen.
Die Syntax für den Befehl xcopy lautet:
xcopy source [destination] [switches]
source- Speicherort und Namen der zu kopierenden Dateien. Es muss das Laufwerk und den Pfad der Dateien oder Verzeichnisse enthalten.destination- das Ziel der zu kopierenden Dateien. Es kann ein Laufwerk, ein Verzeichnis oder ein Dateiname sein.switches- Optionen, die der Befehlxcopybereitstellt. Sie können angezeigt werden, indemxcopy /?im Eingabeaufforderungsfenster ausgeführt wird.
Es gibt mehrere andere Befehle, die xcopy ähneln, einige sogar leistungsfähiger, wie robocopy, rsync, teracopy usw. Aber wir bleiben in diesem Artikel bei xcopy.
Dieses Tutorial zeigt, wie alle Dateien im Ziel ohne Rückfrage überschrieben werden, während Dateien mit dem Befehl xcopy kopiert werden.
Dateien in einen neuen Ordner im Batch kopieren
Um Dateien von einem Ort an einen anderen zu kopieren, führen Sie den folgenden Befehl aus.
xcopy C:\testfolder D:\testfolder /i /s
/s- kopiert Verzeichnisse, Unterverzeichnisse und Dateien innerhalb des zu kopierenden Ordners, sofern sie nicht leer sind./i- zwingtxcopy, das Ziel als Verzeichnis anzunehmen, und erstellt ein neues Verzeichnis. Sie werden aufgefordert einzugeben, ob das Ziel eine Datei oder ein Verzeichnis ist, wenn diese Option nicht verwendet wird.
Um nur die Verzeichnisstruktur und nicht die Dateien zu kopieren, führen Sie den folgenden Befehl aus.
xcopy C:\testfolder D:\testfolder /t /e
/t- kopiert die Verzeichnisstruktur ohne Dateien./e- kopiert alle Unterverzeichnisse, auch wenn sie leer sind. Es wird mit den Optionen/tund/sverwendet.
Ausgabe:
Wie oben gezeigt, wird nur das Verzeichnis kopiert und nicht die Dateien.
Dateien durch Überschreiben vorhandener Dateien im Batch kopieren
Um vorhandene Dateien beim Kopieren zu überschreiben, führen Sie den folgenden Befehl aus.
xcopy C:\testfolder D:\testfolder /i /s
Wenn das Ziel bereits eine Datei mit demselben Namen enthält, hält xcopy an und fragt, was mit dieser Datei geschehen soll:
Overwrite D:\testfolder\MyFile.txt (Yes/No/All)?
Wie im obigen Bild gezeigt, wird gefragt, ob die vorhandene Datei oder alle Dateien überschrieben werden sollen. Die Antwort All wendet das Überschreiben auch auf jede verbleibende Datei an. Wenn wir viele Dateien über vorhandene Dateien kopieren, ohne All zu antworten, wird für jede Datei mit demselben Namen eine Rückfrage angezeigt.
Es ist zu zeitaufwendig, dies für jede Datei zu bestätigen. Um dies zu vermeiden, müssen wir die Option /y mit dem obigen Befehl verwenden.
Dateien durch Überschreiben aller Dateien ohne Rückfrage im Batch kopieren
Führen Sie den folgenden Befehl aus, um Dateien ohne Rückfrage zum Überschreiben vorhandener Dateien zu kopieren.
xcopy C:\testfolder D:\testfolder /i /s /y
/y - unterdrückt die Rückfrage, die bestätigt, ob die vorhandenen Dateien am Ziel überschrieben werden sollen oder nicht, sodass jede vorhandene Datei automatisch überschrieben wird.
Dateien über ein Netzwerk im Batch kopieren
xcopy C:\Videos "\\server\media\videos" /s /i /z /w
/s- kopiert Verzeichnisse, Unterverzeichnisse und Dateien innerhalb des zu kopierenden Ordners, sofern sie nicht leer sind./i- zwingtxcopy, das Ziel als Verzeichnis anzunehmen, und erstellt ein neues Verzeichnis. Sie werden aufgefordert einzugeben, ob das Ziel eine Datei oder ein Verzeichnis ist, wenn diese Option nicht verwendet wird./z- kopiert Dateien über ein Netzwerk im wiederaufnehmbaren Modus, d. h., wenn die Verbindung verloren geht, während eine Datei kopiert wird, wird der Kopiervorgang dieser Datei fortgesetzt, sobald die Verbindung wiederhergestellt ist. Es zeigt auch den Fertigstellungsgrad in Prozent an./w- zeigt die MeldungPress any key to begin copying file(s)an und wartet auf Ihre Antwort, bevor der Kopiervorgang beginnt.
Wir haben also besprochen, wie alle vorhandenen Dateien ohne Anzeige einer Rückfrage überschrieben werden, während viele Dateien kopiert werden, d. h., alle Dateien werden überschrieben, ohne für jede Datei eine Rückfrage anzuzeigen.
Es gibt viele andere Optionen, die der Befehl xcopy bietet; Sie können sie überprüfen, indem Sie xcopy /? in der Eingabeaufforderung ausführen. Beachten Sie, dass Microsoft xcopy als veraltet eingestuft hat und für neue Skripte unter aktuellen Windows-Versionen robocopy empfiehlt, aber xcopy bleibt verfügbar und wird in vorhandenen Batch-Dateien weiterhin häufig verwendet.