xcopyxcopy

Kopiert Dateien und Verzeichnisse, einschließlich Unterverzeichnissen.Copies files and directories, including subdirectories.

Beispiele für das Verwenden dieses Befehls finden Sie unter Beispiele.For examples of how to use this command, see Examples.

SyntaxSyntax

Xcopy <Source> [<Destination>] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d [:MM-DD-YYYY]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a | /m}] [/n] [/o] [/x] [/exclude:FileName1[+[FileName2]][+[FileName3]] [{/y | /-y}] [/z] [/b] [/j]

ParameterParameters

ParameterParameter BESCHREIBUNGDescription
<Source> Erforderlich.Required. Gibt den Speicherort und die Namen der Dateien an, die Sie kopieren möchten.Specifies the location and names of the files you want to copy. Dieser Parameter muss entweder ein Laufwerk oder einen Pfad enthalten.This parameter must include either a drive or a path.
[<Destination>][<Destination>] Gibt das Ziel der Dateien an, die Sie kopieren möchten.Specifies the destination of the files you want to copy. Dieser Parameter kann einen Laufwerk Buchstaben, einen Doppelpunkt, einen Verzeichnisnamen, einen Dateinamen oder eine Kombination dieser Parameter enthalten.This parameter can include a drive letter and colon, a directory name, a file name, or a combination of these.
/w/w Zeigt die folgende Meldung an und wartet auf die Antwort, bevor mit dem Kopieren von Dateien begonnen wird:Displays the following message and waits for your response before starting to copy files:
Drücken Sie eine beliebige Taste, um mit dem Kopieren von Dateien zu beginnen.Press any key to begin copying file(s)
/p/p Sie werden aufgefordert, zu bestätigen, ob Sie die einzelnen Zieldateien erstellen möchten.Prompts you to confirm whether you want to create each destination file.
/c/c Ignoriert Fehler.Ignores errors.
/v/v Überprüft jede Datei beim Schreiben in die Zieldatei, um sicherzustellen, dass die Zieldateien mit den Quelldateien identisch sind.Verifies each file as it is written to the destination file to make sure that the destination files are identical to the source files.
/q/q Unterdrückt die Anzeige von xcopy -Meldungen.Suppresses the display of xcopy messages.
/f/f Zeigt beim Kopieren Quell-und Ziel Dateinamen an.Displays source and destination file names while copying.
/l/l Zeigt eine Liste der Dateien an, die kopiert werden sollen.Displays a list of files that are to be copied.
/g/g Erstellt entschlüsselte Ziel Dateien, wenn das Ziel keine Verschlüsselung unterstützt.Creates decrypted Destination files when the destination does not support encryption.
/d [: mm-dd-yyyy]/d [:MM-DD-YYYY] Kopiert Quelldateien, die am oder nach dem angegebenen Datum geändert wurden.Copies source files changed on or after the specified date only. Wenn Sie keinen mm-dd-yyyy- Wert einschließen, kopiert xcopy alle Quell Dateien, die neuer sind als vorhandene Ziel Dateien.If you do not include a MM-DD-YYYY value, xcopy copies all Source files that are newer than existing Destination files. Diese Befehlszeilenoption ermöglicht es Ihnen, geänderte Dateien zu aktualisieren.This command-line option allows you to update files that have changed.
/U/u Kopiert Dateien aus der Quelle , die nur auf dem Ziel vorhanden sind.Copies files from Source that exist on Destination only.
/i/i Wenn die Quelle ein Verzeichnis ist oder Platzhalter enthält und das Ziel nicht vorhanden ist, wird von xcopy angenommen, dass das Ziel einen Verzeichnisnamen angibt und ein neues Verzeichnis erstellt.If Source is a directory or contains wildcards and Destination does not exist, xcopy assumes Destination specifies a directory name and creates a new directory. Anschließend kopiert xcopy alle angegebenen Dateien in das neue Verzeichnis.Then, xcopy copies all specified files into the new directory. Standardmäßig werden Sie von xcopy aufgefordert, anzugeben, ob es sich bei dem Ziel um eine Datei oder ein Verzeichnis handelt.By default, xcopy prompts you to specify whether Destination is a file or a directory.
/s/s Kopiert Verzeichnisse und Unterverzeichnisse, es sei denn, Sie sind leer.Copies directories and subdirectories, unless they are empty. Wenn Sie /s weglassen, funktioniert xcopy innerhalb eines einzelnen Verzeichnisses.If you omit /s, xcopy works within a single directory.
/e/e Kopiert alle Unterverzeichnisse, auch wenn Sie leer sind.Copies all subdirectories, even if they are empty. Verwenden Sie /e mit den Befehlszeilenoptionen /s und /t .Use /e with the /s and /t command-line options.
/t/t Kopiert nur die Unterverzeichnisstruktur (d. h. die Struktur), keine Dateien.Copies the subdirectory structure (that is, the tree) only, not files. Um leere Verzeichnisse zu kopieren, müssen Sie die Befehlszeilenoption /e einschließen.To copy empty directories, you must include the /e command-line option.
/k/k Kopiert Dateien und behält das schreibgeschützte Attribut in den Ziel Dateien bei, sofern Sie in den Quell Dateien vorhanden sind.Copies files and retains the read-only attribute on Destination files if present on the Source files. Standardmäßig entfernt xcopy das schreibgeschützte Attribut.By default, xcopy removes the read-only attribute.
/r/r Kopiert schreibgeschützte Dateien.Copies read-only files.
/h/h Kopiert Dateien mit ausgeblendeten Attributen und Systemdatei Attributen.Copies files with hidden and system file attributes. Xcopy kopiert standardmäßig keine ausgeblendeten oder Systemdateien.By default, xcopy does not copy hidden or system files
/a/a Kopiert nur Quell Dateien, deren Archivdatei Attribute festgelegt sind.Copies only Source files that have their archive file attributes set. /a ändert nicht das Archivdatei Attribut der Quelldatei./a does not modify the archive file attribute of the source file. Weitere Informationen zum Festlegen des Attributs "Archivdatei" mithilfe von atzb finden Sie unter Zusätzliche Verweise.For information about how to set the archive file attribute by using attrib, see Additional References.
/m/m Kopiert Quell Dateien, deren Archivdatei Attribute festgelegt sind.Copies Source files that have their archive file attributes set. Im Gegensatz zu /a deaktiviert /m die Attribute der Archivdatei in den Dateien, die in der Quelle angegeben sind.Unlike /a, /m turns off archive file attributes in the files that are specified in the source. Weitere Informationen zum Festlegen des Attributs "Archivdatei" mithilfe von atzb finden Sie unter Zusätzliche Verweise.For information about how to set the archive file attribute by using attrib, see Additional References.
/n/n Erstellt Kopien mithilfe der kurzen NTFS-Datei-oder Verzeichnisnamen.Creates copies by using the NTFS short file or directory names. /n ist erforderlich, wenn Sie Dateien oder Verzeichnisse von einem NTFS-Volume auf ein FAT-Volume kopieren oder wenn die Benennungs Konvention für FAT-Dateisystem (8,3 Zeichen) im Ziel Dateisystem erforderlich ist./n is required when you copy files or directories from an NTFS volume to a FAT volume or when the FAT file system naming convention (that is, 8.3 characters) is required on the Destination file system. Das Ziel Dateisystem kann FAT oder NTFS sein.The Destination file system can be FAT or NTFS.
/o/o Kopiert Dateibesitz-und freigegebene Informationen zur Zugriffs Steuerungs Liste (DACL).Copies file ownership and discretionary access control list (DACL) information.
/x/x Kopiert Datei Überwachungs Einstellungen und SACL (System Access Control List)-Informationen (impliziert /o).Copies file audit settings and system access control list (SACL) information (implies /o).
/Exclude: FileName1 [+ [FileName2] [+ [FileName3] ( ) ]/exclude:FileName1[+[FileName2][+[FileName3]( )] Gibt eine Liste von Dateien an.Specifies a list of files. Es muss mindestens eine Datei angegeben werden.At least one file must be specified. Jede Datei enthält Such Zeichenfolgen mit jeder Zeichenfolge in einer separaten Zeile in der Datei.Each file will contain search strings with each string on a separate line in the file.
Wenn eine der Zeichen folgen einem beliebigen Teil des absoluten Pfads der zu kopierenden Datei entspricht, wird diese Datei nicht mehr kopiert.When any of the strings match any part of the absolute path of the file to be copied, that file will be excluded from being copied. Wenn Sie z. b. die Zeichenfolge obj angeben, werden alle Dateien unter dem Verzeichnis obj oder alle Dateien mit der . obj -Erweiterung ausgeschlossen.For example, specifying the string obj will exclude all files underneath the directory obj or all files with the .obj extension.
/y/y Unterdrückt die Eingabeaufforderung, um zu bestätigen, dass Sie eine vorhandene Zieldatei überschreiben möchten.Suppresses prompting to confirm that you want to overwrite an existing destination file.
/-y/-y Fordert Sie auf zu bestätigen, dass Sie eine vorhandene Zieldatei überschreiben möchten.Prompts to confirm that you want to overwrite an existing destination file.
/z/z Kopiert über ein Netzwerk im neu startbaren Modus.Copies over a network in restartable mode.
/b/b Kopiert den symbolischen Link anstelle der Dateien.Copies the symbolic link instead of the files. Dieser Parameter wurde in Windows Vista® eingeführt.This parameter was introduced in Windows Vista®.
/j/j Kopiert Dateien ohne Pufferung.Copies files without buffering. Empfohlen für sehr große Dateien.Recommended for very large files. Dieser Parameter wurde in Windows Server 2008 R2 hinzugefügt.This parameter was added in Windows Server 2008 R2.
/?/? Zeigt die Hilfe an der Eingabeaufforderung an.Displays help at the command prompt.

BemerkungenRemarks

  • Verwenden von "/zUsing /z

    Wenn Sie die Verbindung während der Kopier Phase verlieren (z. b. wenn der Server die Verbindung trennt), wird die Verbindung fortgesetzt, nachdem Sie die Verbindung wieder hergestellt haben.If you lose your connection during the copy phase (for example, if the server going offline severs the connection), it resumes after you reestablish the connection. "/z zeigt auch den Prozentsatz des abgeschlossenen Kopiervorgangs für jede Datei an./z also displays the percentage of the copy operation completed for each file.

  • Verwenden von /y in der COPYCMD-Umgebungsvariablen.Using /y in the COPYCMD environment variable.

    Sie können /y in der COPYCMD-Umgebungsvariablen verwenden.You can use /y in the COPYCMD environment variable. Sie können diesen Befehl überschreiben, indem Sie /-y in der Befehlszeile verwenden.You can override this command by using /-y on the command line. Standardmäßig werden Sie aufgefordert, zu überschreiben.By default, you are prompted to overwrite.

  • Verschlüsselte Dateien werden kopiert.Copying encrypted files

    Das Kopieren verschlüsselter Dateien auf ein Volume, das EFS nicht unterstützt, führt zu einem Fehler.Copying encrypted files to a volume that does not support EFS results in an error. Entschlüsseln Sie zuerst die Dateien, oder kopieren Sie die Dateien auf ein Volume, das EFS unterstützt.Decrypt the files first or copy the files to a volume that does support EFS.

  • Anhängen von DateienAppending files

    Um Dateien anzufügen, geben Sie eine einzelne Datei für das Ziel an, mehrere Dateien für die Quelle (d. h. mithilfe von Platzhaltern oder dem Format file1 + file2 + datei3).To append files, specify a single file for destination, but multiple files for source (that is, by using wildcards or file1+file2+file3 format).

  • Standardwert für ZielDefault value for Destination

    Wenn Sie das Ziel weglassen, werden die Dateien mit dem xcopy -Befehl in das aktuelle Verzeichnis kopiert.If you omit Destination, the xcopy command copies the files to the current directory.

  • Angeben, ob das Ziel eine Datei oder ein Verzeichnis istSpecifying whether Destination is a file or directory

    Wenn das Ziel kein vorhandenes Verzeichnis enthält und nicht mit einem umgekehrten Schrägstrich endet ( ) , wird die folgende Meldung angezeigt:If Destination does not contain an existing directory and does not end with a backslash (), the following message appears:

    Does <Destination> specify a file name or directory name on the target(F = file, D = directory)?
    

Drücken Sie F, wenn Sie möchten, dass die Dateien in eine Datei kopiert werden.Press F if you want the file or files to be copied to a file. Drücken Sie D, wenn Sie möchten, dass die Dateien in ein Verzeichnis kopiert werden.Press D if you want the file or files to be copied to a directory.

Sie können diese Meldung unterdrücken, indem Sie die Befehlszeilenoption /i verwenden. Dadurch wird von xcopy angenommen, dass es sich bei dem Ziel um ein Verzeichnis handelt, wenn die Quelle mehr als eine Datei oder ein Verzeichnis ist.You can suppress this message by using the /i command-line option, which causes xcopy to assume that the destination is a directory if the source is more than one file or a directory.

  • Verwenden des xcopy -Befehls zum Festlegen des Archive-Attributs für Ziel DateienUsing the xcopy command to set archive attribute for Destination files

    Mit dem xcopy -Befehl werden Dateien mit dem Attribut Satz Archive erstellt, unabhängig davon, ob dieses Attribut in der Quelldatei festgelegt wurde.The xcopy command creates files with the archive attribute set, whether or not this attribute was set in the source file. Weitere Informationen zu Dateiattributen und atzb finden Sie unter Zusätzliche Verweise.For more information about file attributes and attrib, see Additional References.

  • Vergleichen von xcopy und diskcopyComparing xcopy and diskcopy

    Wenn Sie über einen Datenträger verfügen, der Dateien in Unterverzeichnissen enthält und Sie ihn auf einen Datenträger kopieren möchten, der ein anderes Format aufweist, verwenden Sie den xcopy -Befehl anstelle von diskcopy.If you have a disk that contains files in subdirectories and you want to copy it to a disk that has a different format, use the xcopy command instead of diskcopy. Da der diskcopy -Befehl Datenträger Nachverfolgung kopiert, müssen die Quell-und Ziel Datenträger das gleiche Format aufweisen.Because the diskcopy command copies disks track by track, your source and destination disks must have the same format. Der xcopy -Befehl hat diese Anforderung nicht.The xcopy command does not have this requirement. Verwenden Sie xcopy , es sei denn, Sie benötigen eine komplette Kopie des Datenträger ImagesUse xcopy unless you need a complete disk image copy.

  • Exitcodes für xcopyExit codes for xcopy

    Um die von xcopy zurückgegebenen Exitcodes zu verarbeiten, verwenden Sie den ERRORLEVEL -Parameter in der if -Befehlszeile in einem Batch-Programm.To process exit codes returned by xcopy, use the ErrorLevel parameter on the if command line in a batch program. Ein Beispiel für ein Batch-Programm, das Exitcodes mithilfe von if verarbeitet, finden Sie unter Zusätzliche Verweise.For an example of a batch program that processes exit codes using if, see Additional References. In der folgenden Tabelle sind die einzelnen Exitcodes und Beschreibungen aufgeführt.The following table lists each exit code and a description.

    ExitcodeExit code BESCHREIBUNGDescription
    00 Dateien wurden ohne Fehler kopiert.Files were copied without error.
    11 Es wurden keine Dateien zum Kopieren gefunden.No files were found to copy.
    22 Der Benutzer hat STRG + C gedrückt, um xcopy zu beenden.The user pressed CTRL+C to terminate xcopy.
    44 Initialisierungsfehler.Initialization error occurred. Es ist nicht genügend Arbeitsspeicher oder Speicherplatz vorhanden, oder Sie haben einen ungültigen Laufwerk Namen oder eine ungültige Syntax in der Befehlszeile eingegeben.There is not enough memory or disk space, or you entered an invalid drive name or invalid syntax on the command line.
    55 Fehler beim Schreiben des Datenträgers.Disk write error occurred.

BeispieleExamples

1. geben Sie Folgendes ein, um alle Dateien und Unterverzeichnisse (einschließlich aller leeren Unterverzeichnisse) von Laufwerk A auf Laufwerk B zu kopieren:1. To copy all the files and subdirectories (including any empty subdirectories) from drive A to drive B, type:

xcopy a: b: /s /e

2. um im vorherigen Beispiel System-oder ausgeblendete Dateien einzuschließen, fügen Sie die Befehlszeilenoption /h wie folgt hinzu:2. To include any system or hidden files in the previous example, add the/h command-line option as follows:

xcopy a: b: /s /e /h

3. geben Sie Folgendes ein, um Dateien im Verzeichnis "\Reports" mit den Dateien im Verzeichnis "\rawdata" zu aktualisieren, die seit dem 29. Dezember 1993 geändert wurden:3. To update files in the \Reports directory with the files in the \Rawdata directory that have changed since December 29, 1993, type:

xcopy \rawdata \reports /d:12-29-1993

4. geben Sie Folgendes ein, um alle Dateien zu aktualisieren, die im vorherigen Beispiel in \Reports vorhanden sind:4. To update all the files that exist in \Reports in the previous example, regardless of date, type:

xcopy \rawdata \reports /u

5. geben Sie Folgendes ein, um eine Liste der Dateien abzurufen, die mit dem vorherigen Befehl kopiert werden sollen (d. h., ohne die Dateien tatsächlich zu kopieren):5. To obtain a list of the files to be copied by the previous command (that is, without actually copying the files), type:

xcopy \rawdata \reports /d:12-29-1993 /l > xcopy.out

Die Datei Xcopy. out listet alle Dateien auf, die kopiert werden sollen.The file xcopy.out lists every file that is to be copied.

6. um das Verzeichnis "\customer" und alle Unterverzeichnisse in das Verzeichnis \ \ public\address auf dem Netzwerklaufwerk H: zu kopieren, behalten Sie das Attribut "schreibgeschützt" bei, und Sie werden beim Erstellen einer neuen Datei auf "h:" aufgefordert, Folgendes einzugeben:6. To copy the \Customer directory and all subdirectories to the directory \\Public\Address on network drive H:, retain the read-only attribute, and be prompted when a new file is created on H:, type:

xcopy \customer h:\public\address /s /e /k /p

7. um den vorherigen Befehl auszugeben, stellen Sie sicher, dass xcopy das Verzeichnis \address erstellt, wenn es nicht vorhanden ist, und unterdrücken Sie die Meldung, die beim Erstellen eines neuen Verzeichnisses angezeigt wird, indem Sie die Befehlszeilenoption /i wie folgt hinzufügen:7. To issue the previous command, ensure that xcopy creates the \Address directory if it does not exist, and suppress the message that appears when you create a new directory, add the /i command-line option as follows:

xcopy \customer h:\public\address /s /e /k /p /i

8. Sie können ein Batch-Programm erstellen, um xcopy -Vorgänge auszuführen, und den Batch if -Befehl verwenden, um den Exitcode zu verarbeiten, wenn ein Fehler auftritt.8. You can create a batch program to perform xcopy operations and use the batch if command to process the exit code if an error occurs. Beispielsweise verwendet das folgende Batch-Programm ersetzbare Parameter für die xcopy -Quell-und-Zielparameter:For example, the following batch program uses replaceable parameters for the xcopy source and destination parameters:

@echo off
rem COPYIT.BAT transfers all files in all subdirectories of
rem the source drive or directory (%1) to the destination
rem drive or directory (%2)
xcopy %1 %2 /s /e
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo Insufficient memory to copy files or
echo invalid drive or command-line syntax.
goto exit
:abort
echo You pressed CTRL+C to end the copy operation.
goto exit
:exit

Wenn Sie das vorherige Batch Programm verwenden möchten, um alle Dateien im Verzeichnis "c:\Prgmcode" und seinen Unterverzeichnissen auf Laufwerk B zu kopieren, geben Sie Folgendes ein:To use the preceding batch program to copy all files in the C:\Prgmcode directory and its subdirectories to drive B, type:

copyit c:\prgmcode b:

Der Befehls Interpreter ersetzt " c:\Prgmcode " für " %1 " und " B": für " %2" verwendet " xcopy " mit den Befehlszeilenoptionen " /e " und " /s ".The command interpreter substitutes C:\Prgmcode for %1 and B: for %2, then uses xcopy with the /e and /s command-line options. Wenn xcopy einen Fehler feststellt, liest das Batch Programm den Exitcode und wechselt zu der Bezeichnung, die in der entsprechenden IF ERRORLEVEL -Anweisung angegeben wird. Anschließend wird die entsprechende Meldung angezeigt, und das Batch Programm wird beendet.If xcopy encounters an error, the batch program reads the exit code and goes to the label indicated in the appropriate IF ERRORLEVEL statement, then displays the appropriate message and exits from the batch program.

9. in diesem Beispiel werden alle nicht leeren Verzeichnisse sowie die Dateien kopiert, deren Name dem Muster entspricht, das mit dem Sternchen-Symbol angegeben wurde.9. This example copies all the non-empty directories, plus files whose name match the pattern given with the asterisk symbol.

xcopy .\toc*.yml ..\..\Copy-To\ /S /Y

rem Output example.
rem  .\d1\toc.yml
rem  .\d1\d12\toc.yml
rem  .\d2\toc.yml
rem  3 File(s) copied

Im vorherigen Beispiel ist dieser bestimmte Quellparameter Wert . \ "Dec * . yml " kopiert dieselben drei Dateien, auch wenn die beiden Pfad \ Zeichen entfernt wurden.In the preceding example, this particular source parameter value .\toc*.yml copies the same 3 files even if its two path characters .\ were removed. Es werden jedoch keine Dateien kopiert, wenn der Platzhalter Platzhalter aus dem Quellparameter entfernt wurde . \"Inhaltsverzeichnis".However, no files would be copied if the asterisk wildcard was removed from the source parameter, making it just .\toc.yml.

Zusätzliche ReferenzenAdditional References