Системы Windows могут стать менее эффективными при копировании и вставке большого количества небольших файлов, поскольку каждая копия файла требует создания новых метаданных файла, что может занять очень много времени при работе с большим количеством небольших файлов. Вот некоторые возможные решения:
Обратите внимание, что эти методы могут работать по-разному в зависимости от вашей ситуации и конфигурации системы.
TeraCopy и FastCopy — инструменты с графическим интерфейсом.,Мне удобнее использовать командную строку:robocopy или xcopy
И robocopy, и xcopy — это инструменты копирования файлов из командной строки в системах Windows, но между ними есть некоторые различия. В целом, robocopy имеет больше возможностей и преимуществ по сравнению с xcopy.
Вот некоторые ключевые различия и преимущества между robocopy и xcopy:
хотя robocopy относительно xcopy имеет больше преимуществ, но в некоторых простых задачах копирования файлов xcopy Все еще компетентный. Однако для сложных файловых задач, особенно связанных с большим количеством файлов, больших папок и передачей по сети, рекомендуется использовать robocopy. Обычно лучший выбор.
Для копирования файлов на локальный жесткий диск обычно достаточно xcopy. xcopy может выполнять наиболее распространенные задачи копирования файлов, такие как копирование файлов, папок и подпапок, сохранение атрибутов файлов и временных меток и т. д.
Однако в некоторых конкретных случаях использование robocopy может принести дополнительные преимущества, такие как:
Короче говоря, хотя xcopy Достаточно для большинства задач копирования файлов на локальный жесткий диск, но в некоторых конкретных случаях использование robocopy Может принести больше преимуществ. В зависимости от конкретных потребностей и сценариев применения вы можете использовать xcopy или robocopy。
Следующий пример — моя любимая комбинация: время начала, время окончания, путь к подпапке и количество содержащихся в ней файлов, пути к источнику и месту назначения.
robocopy "C:\input\V-Ray Benchmark" "D:\input\V-Ray Benchmark" /S /E /IS /NFL /np
В примере ниже добавлено много параметров и нет эха. Я к этому не привык, но смысл каждого параметра нужно объяснить.
robocopy "C:\input\V-Ray Benchmark" "D:\input\V-Ray Benchmark" /E /IS /NFL /NDL /NJH /NJS /nc /ns /np
объяснять:
/IS
:крышкатакой тот же файл, даже если целевой файл уже обновлен./NFL
:Не указывать имена файлов в файлах журналов。/NDL
:Не указывайте имена каталогов в файлах журналов。/NJH
:Не выводить заголовки заданий в файлы журналов。/NJS
:Не выводить сводку задания в файл журнала。/nc
:Не показывать классы в выводе(Похоже на папку)。/ns
:Не показывать размер файла в выводе。/np
:Не показывать процент прогресса。В случае копирования одного указанного файла либо добавьте * после имени файла, либо добавьте параметр /-I.
xcopy /S /E /F /H /Y /Q "W:\sources\install.wim" "B:\install_exp.wim*"
xcopy /S /E /F /H /Y /Q "W:\sources\install.wim" "B:\install_exp.wim" /-I
/I Если цель не существует и копируется несколько файлов,
Предполагается, что целью должен быть каталог.
/-I Если цель не существует и копируется один указанный файл,
Предполагается, что целью должен быть файл.
Когда /S и /E используются одновременно, функция на самом деле /E. В этом отношении robocopy аналогична xcopy.
/S Копирует подкаталоги, но не копирует пустые подкаталоги.
/E Копирует подкаталоги, включая пустые.
xcopy /s /e /f /h /y /q /b "C:\input\V-Ray Benchmark" "D:\input\V-Ray Benchmark\"
xcopy /s /e /f /h /y /q /b "C:\input\V-Ray Benchmark" "D:\input\V-Ray Benchmark" /I
xcopy "C:\input\V-Ray Benchmark\*" "D:\input\V-Ray Benchmark\" /S /E /I /Y /Q
Обратите внимание, что путь к целевой папке должен быть добавлен в конце.\,В противном случае вам придется добавить/Iпараметр,Если вы не добавите его,Это будет похоже на первую команду на картинке ниже.,Появится всплывающее окно с просьбой подтвердить, является ли целью файл или каталог.
Каковы функции этих параметров xcopy?
/s: копирует каталог и его подкаталоги, исключая пустые каталоги.
/e: копирует каталог и его подкаталоги, включая пустые каталоги. Аналогично /s, но включает пустые подкаталоги.
/f: отображать полные имена файлов источника и назначения в выходных данных. Это облегчает просмотр копируемых файлов.
/h: копирует скрытые и системные файлы. По умолчанию скрытые и системные файлы не копируются.
/y: тихо перезаписать существующие файлы. Если целевой файл уже существует, xcopy обычно спрашивает, перезаписать ли его. Используйте параметр /y, чтобы пропустить приглашение.
/q: Тихий режим, не отображает имена скопированных файлов. Это приводит к тому, что xcopy выдает меньше результатов во время выполнения.
/b: копировать при символической ссылке,Рассматривать целевой файл как файл и каталог,а не ссылку. Это означает указание ссылки копировать на реальный файл или каталог.
/c: продолжить копирование, даже если произойдет ошибка. По умолчанию xcopy прекращает копирование, если обнаруживает ошибку (например, недоступный файл). Используйте параметр /c, чтобы игнорировать ошибки и продолжить копирование.
/k: сохранять атрибуты «только для чтения» при копировании файлов. По умолчанию атрибуты, доступные только для чтения, удаляются в процессе копирования. Используйте параметр /k, чтобы сохранить в целевом файле атрибуты, доступные только для чтения.
/x: сохранять настройки аудита и информацию о владельце при копировании файлов. Это полезно, когда вам нужно сохранить настройки безопасности при копировании файлов.
Я понял, что xcopy имеет так много параметров подразделения, что я случайно увидел из полной командной строки, соответствующей фоновому процессу программного обеспечения ramdisk.