Jump to content

XCOPY.EXE

From Alfawiki
Adapted from the English Wikipedia article XCOPY.EXE, available under CC BY-SA 4.0Updated 9 August 2025
XCOPY
Company typeCommand-line utility
IndustrySoftware / Operating systems
Founded1984 (with DOS version 3.2)
ProductsFile and directory copying tool
Websitehttps://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy

XCOPY is a shell command utilized for duplicating files and entire directory structures either within local directories or across network connections. It was created to enhance the basic functionality of the simpler copy command, with its name derived from extended copy.

Originally released with DOS version 3.2, xcopy has been incorporated into multiple operating systems including IBM PC DOS, MS-DOS, OS/2, various Windows editions, FreeDOS, ReactOS, DR DOS 6.0, and ROM-DOS. The FreeDOS variant, authored by Rene Ableidinger, is distributed under the terms of the GPL. Meanwhile, ReactOS’s adaptation by J. Edmeades is licensed under the LGPL.

Despite Microsoft’s formal announcement that xcopy would be superseded by robocopy starting with Windows Vista, the command remains present in modern Windows versions, indicating ongoing availability.

Compression

Starting with Windows Server 2019 and Windows 10, xcopy supports a /compress switch designed to enhance network transfer efficiency. When activated, if the target supports Server Message Block (SMB) compression and the files are compressible, this feature can significantly boost transfer speeds.

Deployment

The term xcopy deployment refers to installing an application by simply copying its files using xcopy or similar utilities. This method contrasts with conventional Windows installations that typically modify the Windows Registry and register components for system integration. While xcopy deployment offers a straightforward approach, it lacks the ability to perform these advanced setup tasks. For more complex installation requirements, tools such as Windows Installer, InnoSetup, InstallShield, or NSIS are commonly employed.

Limitations

If the combined length of a path and filename exceeds 254 characters, xcopy will fail with an "insufficient memory" error. The "/J" option, available since Windows Server 2008 R2, enables unbuffered copying of files and is recommended when transferring very large files to minimize memory consumption.

Additionally, xcopy cannot duplicate files that are open by other processes and lacks support for Windows Volume Shadow Copy. These constraints reduce its effectiveness for backing up active system data.

Example

To create a new directory by copying all contents—including hidden and system files as well as empty folders—from an existing directory:

<syntaxhighlight lang="doscon"> >xcopy e:\existing e:\newcopy /e /i /h </syntaxhighlight>

When dealing with pathnames containing spaces, enclose them in quotation marks:

<syntaxhighlight lang="doscon"> >xcopy "D:\Documents and Settings\MY.USERNAME\My Documents\*" "E:\MYBACKUP\My Documents\" /D/E/C/Y </syntaxhighlight>

Copy an entire drive to a mapped network location while ignoring errors and using restartable mode:

<syntaxhighlight lang="doscon"> >xcopy *.* z:\Netmirror /E /V /C /F /H /Y /Z 1>out.txt 2>err.txt </syntaxhighlight>

Copy a single file without prompting whether the destination is a file or directory:

<syntaxhighlight lang="doscon"> >cmd /c echo F | xcopy "c:\directory 1\myfile" "c:\directory 2\myfile" </syntaxhighlight>

See also

Further reading

External links