Введение
В вычислительной технике XCOPY — это команда, используемая в IBM PC DOS, MS DOS, IBM OS/2, Microsoft Windows, FreeDOS, ReactOS и совместимых операционных системах для копирования нескольких файлов или целых деревьев каталогов из одного каталога в другой, а также для копирования файлов по сети.
In computing, XCOPY is a command used on IBM PC DOS, MS DOS, IBM OS/2, Microsoft Windows, FreeDOS, ReactOS, and related operating systems for copying multiple files or entire directory trees from one directory to another and for copying files across a network.
Обзор
XCOPY расшифровывается как extended copy (расширенное копирование) и был создан как более функциональная утилита копирования файлов, чем команда copy (копирование), присутствовавшая в более ранних операционных системах. XCOPY впервые появился в DOS 3.2. Несмотря на то, что XCOPY все еще входит в состав Windows 10, он устарел и заменен robocopy – более мощным инструментом копирования, который теперь поставляется с операционными системами Microsoft Windows Server и Desktop. DR DOS 6.0 и Datalight ROM DOS включают в себя реализацию этой команды. Версия FreeDOS была разработана Рене Аблайдингером и распространяется под лицензией GPL. J. Edmeades разработал версию, совместимую с Wine, которая включена в ReactOS. Она лицензирована по LGPL.
Сжатие
С Windows Server 2019 и Windows 10 в утилите xcopy появилась возможность сжатия при копировании данных по сети. При использовании этой опции, если целевой компьютер поддерживает сжатие SMB и копируемые файлы хорошо сжимаются, можно добиться существенного повышения производительности. Сжатие SMB добавляет сжатие пробельных символов непосредственно в процессе передачи файлов. Сжатие также доступно в команде robocopy и при миграции виртуальных машин Hyper-V с использованием SMB.
Ограничения
XCOPY завершается с ошибкой "недостаточно памяти", если длина пути и имени файла превышает 254 символа. Опция "/J" копирует файлы без использования буфера; перемещение очень больших файлов без этой опции (доступно начиная с Server 2008R2) может использовать всю доступную оперативную память системы.
moving very large files without the option (available only after Server 2008R2) can consume all available RAM on a system.
Нет открытых файлов
XCOPY не копирует открытые файлы. Любой процесс может открывать файлы для эксклюзивного чтения, блокируя общий доступ к чтению (FILE SHARE READ).
XCOPY не поддерживает службу Windows Volume Shadow Copy, которая фактически позволяет процессам получать доступ к открытым файлам, поэтому она не подходит для резервного копирования рабочих томов операционной системы.
Развертывание XCOPY
Развертывание XCOPY или установка xcopy — это установка программного приложения в систему Microsoft Windows путем простого копирования файлов. Название происходит от утилиты командной строки XCOPY, предоставляемой операционными системами Microsoft. В отличие от этого, установка типичного приложения Windows требует значительного количества дополнительных шагов, прежде чем приложение будет готово к использованию. Большая часть этой дополнительной работы, прямо или косвенно, связана с добавлением или изменением записей в реестре Windows. Даже если приложение использует обычные файлы для хранения своих данных, многие стандартные функции Windows требуют определенной процедуры регистрации, прежде чем они станут доступны программам. Как правило, для координации этих относительно сложных операций используются один или несколько специализированных инструментов, таких как Windows Installer, InnoSetup или NSIS.