Содержание
- Как копировать или перемещать файлы и папки в Windows 10
- Как копировать или перемещать файлы с помощью перетаскивания
- Как копировать или перемещать файлы, используя вырезать, копировать и вставить
- Копирование или перемещение файлов и папок с помощью контекстного меню
- Как копировать или перемещать файлы с помощью командной строки
- Как копировать или перемещать файлы с помощью PowerShell
- Как в windows 10 скопировать только новые файлы
- Копирование файлов с заменой на более новые
- Robocopy для копирования только новых папок и файлов
- 4 ответа 4
- Как в Windows скопировать файлы и папки на другой диск или раздел, сохранив временные метки
- Редактирование временных меток в Change Timestamp
Как копировать или перемещать файлы и папки в Windows 10
Windows предлагает множество способов копирования и перемещения файлов. Мы покажем вам все хитрости для проводника и их использование в командной строке и PowerShell. Вы даже можете добавить «Копировать в» и «Переместить в» в контекстные меню Проводника.
При копировании файла или папки в Windows 10 дубликат создается из выбранного элемента и сохраняется в выбранной папке назначения. Однако при перемещении файла или папки исходный элемент перемещается в целевую папку вместо отправки идентичной копии.
Как копировать или перемещать файлы с помощью перетаскивания
Одним из наиболее распространенных способов копирования или перемещения файла или папки является перетаскивание их в папку назначения. По умолчанию, в зависимости от расположения папки назначения, File Explorer может перемещать ее вместо ее копирования или наоборот. Однако есть скрытый метод, который переопределяет поведение Windows по умолчанию.
Откройте проводник, нажав Windows + E, и перейдите к файлу, который вы хотите скопировать.
При перетаскивании файлов из одной папки в другую вы можете использовать панель слева или открыть другой экземпляр Проводника, чтобы перейти к папке назначения. В этом примере мы будем использовать второе окно проводника для копирования файлов.
Откройте второе окно проводника, нажав Windows + E, и перейдите к папке назначения.
Windows выполняет два действия по умолчанию при перетаскивании файла или папки в новое место назначения: копирование или перемещение. Копирование происходит, когда вы помещаете файл или папку в каталог на другой привод. Перемещение происходит, когда вы бросаете его на одни и те же диск, как мы сделаем ниже. Однако есть скрытый прием, который заставляет Windows выполнять определенное действие.
Чтобы скопировать файлы на другой диск, выделите файлы, которые вы хотите скопировать, щелкните и перетащите их во второе окно, а затем отбросьте их.
Если вы пытаетесь скопировать файлы в папку на том же диске, щелкните и перетащите их во второе окно. Прежде чем вы их уроните, нажмите Ctrl, чтобы активировать режим копирования.
Чтобы переместить файлы в другой каталог на том же диске, выделите файлы, которые вы хотите переместить, щелкните и перетащите их во второе окно, а затем отбросьте их.
Если папка назначения находится на другом диске, щелкните и перетащите их во второе окно, как и раньше, но на этот раз нажмите Shift, чтобы активировать режим Move.
Как копировать или перемещать файлы, используя вырезать, копировать и вставить
Вы также можете копировать и перемещать файлы с помощью буфера обмена, так же, как вы вырезать, копировать и вставлять текст.
Откройте проводник, нажав Windows + E, и перейдите к файлу, который вы хотите скопировать.
Выделите файлы, которые вы хотите скопировать, а затем нажмите «Копировать» в меню «Файл» или нажмите Ctrl + C на клавиатуре, чтобы добавить их в буфер обмена.
Если вы предпочитаете перемещать элементы, выделите файлы, которые вы хотите переместить. Затем нажмите «Вырезать» в меню «Файл» или нажмите Ctrl + X, чтобы добавить файлы в буфер обмена.
Перейдите в каталог, в который вы хотите переместить файлы, а затем нажмите «Вставить» на вкладке «Главная» или нажмите Ctrl + V. В зависимости от того, нажмете ли вы «Копировать» или «Вырезать», ваши файлы будут скопированы или перемещены соответственно.
Копирование или перемещение файлов и папок с помощью контекстного меню
Когда вы щелкаете правой кнопкой мыши по файлу или папке, в Windows есть несколько скрытых функций контекстного меню, которые позволяют вам добавить две опции: Копировать в или Переместить в. Добавление этих двух функций в контекстное меню дает вам возможность скопировать или переместить элементы всего за несколько кликов.
СВЯЗАННЫЕ С: Как добавить «Переместить в» или «Скопировать в» в контекстное меню Windows 10
Как копировать или перемещать файлы с помощью командной строки
Один из самых быстрых способов открыть командную строку в нужном каталоге — из проводника. Сначала откройте проводник и перейдите к месту назначения. Нажмите на адресную строку, введите « cmd ”И нажмите Enter.
СВЯЗАННЫЕ С: 10 способов открыть командную строку в Windows 10
Чтобы скопировать файл, вы можете использовать следующий синтаксис команды (если вы копируете папку, просто опустите расширение файла):
Кавычки в команде важны только тогда, когда имя файла или папки содержит пробелы. Если у них нет пробелов, вам не нужно включать кавычки. В приведенном ниже примере ни имя файла, ни папка не содержат пробелов, поэтому нам не нужно их использовать.
Вы также можете использовать copy Команда для дублирования нескольких файлов одновременно. Просто разделите каждый файл запятой, а затем укажите папку назначения, как обычно.
Чтобы переместить файл, вы можете использовать следующий синтаксис команды (если вы перемещаете папку, просто опустите расширение файла):
Как и при копировании, кавычки в команде важны только тогда, когда имя файла или папки содержит пробелы. Если они этого не делают, вам не нужно включать кавычки. В приведенном ниже примере ни имя файла, ни папка не содержат пробелов, поэтому нам не нужно их использовать.
Однако, если вы попытаетесь переместить несколько файлов, как мы это сделали с copy Командная строка выдаст синтаксическую ошибку.
Есть несколько других способов перемещать более одного элемента одновременно, используя командную строку, не выдавая ошибку. Каждый метод использует подстановочный знак для перемещения нескольких файлов в одной инструкции.
Во-первых, если вы хотите переместить все файлы определенного типа, вы можете использовать следующий синтаксис для перемещения файлов:
Второй метод включает перемещение всего внутри исходного каталога, независимо от типа файла. Вы можете использовать следующий синтаксис для завершения перемещения:
Как копировать или перемещать файлы с помощью PowerShell
Windows PowerShell даже более мощная и гибкая, чем командная строка, когда дело доходит до копирования или перемещения файлов и папок в среде командной строки. Хотя мы будем только царапать поверхность, с помощью командлетов вы можете делать действительно мощные вещи.
Самый быстрый способ открыть окно PowerShell в нужном месте — сначала открыть папку в проводнике. В меню «Файл» нажмите «Открыть Windows PowerShell», а затем выберите «Открыть Windows PowerShell».
СВЯЗАННЫЕ С: 9 способов открыть PowerShell в Windows 10
«Открыть Windows PowerShell»> «Открыть Windows PowerShell». «Width =» 541 «height =» 318 «onload =» pagespeed.lazyLoadImages.loadIfVisibleAndMaybeBeacon (this); «onerror =» this.onerror = null; pagespeed.lazyLoadImages.loadIfayeA это); «/>
Чтобы скопировать файл или папку в PowerShell, используйте следующий синтаксис:
Хотя они не являются обязательными, Copy-Item Командлет требует только кавычки вокруг имени файла и каталога, если они содержат пробелы.
Например, чтобы скопировать файл из текущего каталога в другой, вы должны использовать следующую команду:
Настоящая мощь PowerShell заключается в возможности передавать командлеты вместе. Например, у нас есть папка с кучей подпапок с электронными книгами, которые мы хотим скопировать.
Вместо изменения каталога и повторного запуска команды мы можем заставить PowerShell сканировать каждую папку и подпапку, а затем копировать все файлы определенного типа в место назначения.
Мы могли бы использовать следующий командлет:
Для перемещения файлов вместо этого вы можете использовать следующий синтаксис для перемещения чего угодно:
Move-Item следует тому же синтаксису, что и Copy-Item Командлет. Итак, если вы хотите переместить все определенные типы файлов из папки и всех ее подпапок — как мы это делали с командлетом Copy-Item — он практически идентичен.
Введите следующий командлет, чтобы переместить все файлы определенного типа из каталога и его подпапок:
Источник
Как в windows 10 скопировать только новые файлы
Сообщения: 2378
Благодарности: 1485
——-
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.
» width=»100%» style=»BORDER-RIGHT: #719bd9 1px solid; BORDER-LEFT: #719bd9 1px solid; BORDER-BOTTOM: #719bd9 1px solid» cellpadding=»6″ cellspacing=»0″ border=»0″>
Сообщения: 114
Благодарности:
Спасибо
Сделал так, Все верно или лучше, что то добавить?
robocopy «\dc1c_update1cv8» «C:Program Files (x86)1cv8» /MIR /Z
Читаем xcopy /?
/D:m-d-y Копирует файлы, измененные либо в указанный день, либо после. »
Этот вариант не интересен тем, что править скрипт пришлось бы
Сообщения: 27467
Благодарности: 8024
Если же Ваша цель именно простая репликация, а не резервирование — то в общем случае этого достаточно, разве что с параметрами логирования поиграться: Robocopy и убедиться, что файловая система в источнике и приёмнике — NTFS.
Сообщения: 2378
Благодарности: 1485
написал строчку копирующую все файлы папками в другую папку.
Вот команда
xcopy «\dc1c_update1cv8» «C:Program Files (x86)1cv8» /y /S /E
——-
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.
Источник
Копирование файлов с заменой на более новые
Всем доброго времени суток.
Недавно перешел на Вин 10 и возник немного глупый вопрос: мне надо скопировать папку с файлами с флешки на компьютер. Папки на компе и флешке одинаковые, но на флешке некоторые файлы более новые или папка содержит новые файлы. На семерке можно было задать копирование с заменой на более новые файлы. При этом одинаковые файлы не копировались, а заменялись только обновленные. На десятке же у меня копируются все файлы по новой. И когда я хочу обновить данные с рабочей флешки на домашнем компе, копирование занимает кучу времени. А раньше за несколько секунд копировались только новые файлы.
Это такая особенность десятки или у меня что-то не так работает? Можно ли как-нибудь сделать, чтобы копировались только новые файлы, а не папка целиком?
Пробовал копировать как в проводнике, так и в Total commander.
Копирование всех файлов с заменой на более свежие по дате создания
Ну весь вопрос в теме, как скопировать все файлы знаю, а как поработать при замене с датой создания.
Копирование файлов с заменой более старых
Доброго времени суток уважаемые форумчане. Столкнулся с такой проблемой: Есть функция копирования.
Копирование файлов с заменой
Требуется скопировать файлы из одной директории в другую. Если имена файлов совпадают, то оставить.
Копирование системы с заменой файлов
Вчера после установки обнов лягла винда, а образ сделанный недавно не работает. На ноуте можно.
Чот я не припомню, чтобы в проводнике когда-то была такая возможность. Но я прекрасно знаю, что в Total Commnder такая возможность была ВСЕГДА.
Источник
Robocopy для копирования только новых папок и файлов
Чтобы найти все новые файлы и подпапки в некоторой корневой папке (скажем, «Документы») и скопировать их на другой диск (в данном случае J: 🙂
Используемая командная строка:
robocopy c:usersvalery Documents j: robocopy /XO /E /MAXAGE:20131030 /XD
Результат: создано полное дерево папок. Только новые файлы скопированы, как предполагается. Хорошо
Дело в том, что я не хочу создавать все подпапки на целевом диске, если в них нет новых файлов.
Результаты приемлемы, но есть много работы, чтобы просмотреть все папки и найти новые файлы, а также понять, какие подпапки являются новыми
4 ответа 4
/S :: copy Подкаталоги, но не пустые.
Если в каталоге не скопированы файлы, каталог не создается в месте назначения.
Если у вас нет каталогов для исключения, вы можете просто использовать:
Вы можете сделать robocopy /? за всю помощь.
Мои простые команды, которые прекрасно работают:
Не этот конкретный случай, но я надеюсь, что это поможет кому-то, когда они будут выполнять миграцию файловых серверов.
Установить источник и пункты назначения:
«Q:TEST» = Устанавливает исходный каталог в подключенный диск «Q»
«T:TEST» = Устанавливает каталог назначения на подключенный диск «T»
Используемые опции:
ПРИМЕЧАНИЕ:
Параметр LOG+ можно переключить на параметр LOG, если вы хотите сохранить только самую свежую информацию о сеансе.
Источник
Как в Windows скопировать файлы и папки на другой диск или раздел, сохранив временные метки
Если вы переместите файлы с одного жесткого диска или логического раздела на другой, их временные метки будут автоматически перезаписаны. Это не всегда бывает нужно, у вас может быть множество причин сохранить исходные временные метаданные. Существуют программы для синхронизации данных, которые позволяют сохранять временные метки, по крайней мере, так утверждают разработчики этих программ, но зачем засорять диск сторонним ПО, если то же самое можно сделать средствами Windows?
Во всех популярных версиях Windows имеется штатная утилита robocopy.exe, которая как раз умеет сохранять метаданные файлов и каталогов при их копировании на другой раздел или физический диск.
Чтобы скопировать файлы с одного диска на другой, откройте от имени администратора командную строку и выполните команду следующего вида:
robocopy «путь к исходным данным» «путь к целевой папке» /E /MIR /COPYALL /DCOPY:T
Редактирование временных меток в Change Timestamp
Если речь идет об одном или нескольких файлах, для «восстановления» исходной временной метки можно воспользоваться бесплатной утилитой Change Timestamp.
Скачайте ее с сайта разработчика dns-plus.net/ctime.html и запустите.
Установите нужные вам дату и время, отметьте флажками нужные метки и перетащите файл либо группу файлов на окошко Change Timestamp.
Временные метки тут же будут изменены, в чём вы сами сможете убедиться, открыв свойства обработанного файла.
Поддерживает утилита и обработку каталогов.
Если спустя некоторое время вы заметите, что временные метки обработанных файлов изменились, отключите в оснастке управления службами службу индексирования Windows Search.
Или предварительно перед обработкой переместите файлы в каталог, который не индексируется этой службой.
Источник
Adblock
detector
Use XCOPY with /D and /L options, «copying» from folder 1 to folder 2.
The /D option restricts the copy to only new or modified files.
The /L option causes the command to list the files that would be copied, but prevents any copies from actually being made.
Then use FOR /F to process those results and actually copy the files to folder 3.
for /f "eol=: delims=" %F in ('xcopy /dl "folder1*" "folder2"') do @copy "%F" "f3" >nul
If put in a batch file, then all %
must be doubled as %%
.
The XCOPY also prints out a summary of how many files are (would be) affected. The above will attempt to copy a file with the summary count «name», and of course fail. The redirection of output to nul prevents the error message from displaying. I tested on Windows 7 and was surprised the error message was on stdout and not stderr. If the error message on other versions is appearing on stderr, then the command should also get 2>nul to prevent the error message.
But there is a risk in hiding the error messages — what if a copy fails for some reason?
Here is a script that will list all files that were successfully copied, as well as indicate which (if any) failed. It uses FINDSTR to filter out the unwanted file count. It assumes the file count is in English, with the form NNN File(s)
, so it would have to be modified for other languages.
@echo off
for /f "eol=: delims=" %%F in (
'xcopy /dl "folder1*" "folder2" ^| findstr /v "^[0-9][0-9]* File(s)"'
) do copy "%%F" "folder3" >nul && echo "%%F"|| echo FAILED: "%%f"
Here is a more complex variant that works with any language. It saves each file name to a variable and delays the copy until the next loop iteration. The last entry (the count) never gets copied.
@echo off
setlocal disableDelayedExpansion
set "file="
for /f "eol=: delims=" %%F in ('xcopy /dl "folder1*" "folder2"') do (
if defined file (
setlocal enableDelayedExpansion
copy "!file!" "folder3" >nul && echo "!file!" || echo FAILED: "!file!"
endlocal
)
set "file=%%F"
)
Use XCOPY with /D and /L options, «copying» from folder 1 to folder 2.
The /D option restricts the copy to only new or modified files.
The /L option causes the command to list the files that would be copied, but prevents any copies from actually being made.
Then use FOR /F to process those results and actually copy the files to folder 3.
for /f "eol=: delims=" %F in ('xcopy /dl "folder1*" "folder2"') do @copy "%F" "f3" >nul
If put in a batch file, then all %
must be doubled as %%
.
The XCOPY also prints out a summary of how many files are (would be) affected. The above will attempt to copy a file with the summary count «name», and of course fail. The redirection of output to nul prevents the error message from displaying. I tested on Windows 7 and was surprised the error message was on stdout and not stderr. If the error message on other versions is appearing on stderr, then the command should also get 2>nul to prevent the error message.
But there is a risk in hiding the error messages — what if a copy fails for some reason?
Here is a script that will list all files that were successfully copied, as well as indicate which (if any) failed. It uses FINDSTR to filter out the unwanted file count. It assumes the file count is in English, with the form NNN File(s)
, so it would have to be modified for other languages.
@echo off
for /f "eol=: delims=" %%F in (
'xcopy /dl "folder1*" "folder2" ^| findstr /v "^[0-9][0-9]* File(s)"'
) do copy "%%F" "folder3" >nul && echo "%%F"|| echo FAILED: "%%f"
Here is a more complex variant that works with any language. It saves each file name to a variable and delays the copy until the next loop iteration. The last entry (the count) never gets copied.
@echo off
setlocal disableDelayedExpansion
set "file="
for /f "eol=: delims=" %%F in ('xcopy /dl "folder1*" "folder2"') do (
if defined file (
setlocal enableDelayedExpansion
copy "!file!" "folder3" >nul && echo "!file!" || echo FAILED: "!file!"
endlocal
)
set "file=%%F"
)
Копирование только обновленных файлов
Если команда хсору используется для резервного копирования набора файлов и папок, ее придется регулярно запускать для поддержания актуального состояния резервной копии. В таком случае вряд ли захочется копировать те файлы, которые не были изменены. Чтобы заставить хсору копировать только те файлы, которые новее резервной копии, следует воспользоваться ключом /D. Тем самым будет сэкономлено и время, и сетевой трафик. Нужно будет также добавить ключ /R, чтобы хсору смогла вести запись поверх старых копий файлов с атрибутом «Только чтение». Ключ /Y позволяет хсору вести запись поверх старых файлов без вывода приглашения на подтверждение. Теперь подчиненные папки, но при этом реально копируются только те файлы, которые оказались новее уже скопированных в папку e:backup. Кроме этого сохраняются все атрибуты файлов. Ключ /D выполняет двойную функцию — его можно также использовать для указания даты, и хсору скопирует только те файлы, которые были созданы или изменены в указанный день или позже. Дополнительную информацию по данному вопросу можно найти в интерактивной справке.
Команда хсору не может скопировать файлы, которые используются прикладными программами, она не может также скопировать персональную информацию реестра, принадлежащую тому пользователю, который вошел в систему. Целесообразнее для проведения резервного копирования поместить команды хсору в пакетный файл, запускаемый из Планировщика заданий в то время, когда вероятность нахождения пользователей в системе ниже всего. При этом нужно воспользоваться ключом /С, чтобы заставить хсору продолжать работу даже в случае возникновения ошибок. Если кто-то припозднился и, к примеру, держит открытым файл документа, ключ /С позволяет хсору продолжить копирование других файлов и папок. Например, вы можете написать пакетный файл для копирования всех пользовательских папок Документы (Documents) в сетевую папку с помощью следующей команды: которая работает в Windows 7 и Vista.
Если вы хотите скопировать только те файлы, которые были изменены / изменены из пула тысяч других файлов, то это, несомненно, сложная задача. Я лично видел, как пользователи создают сложные сценарии для такой задачи. Если вы обычный пользователь компьютера без опыта программирования, вам все равно повезет.
CopyChangedFiles это крошечная бесплатная портативная утилита для Windows, которая копирует только файлы, которые были изменены пользователем в определенную дату или после нее. И да, он поддерживает многопоточность. Просто выберите место назначения и место назначения, выберите измененные на дату или после даты, типы файлов и нажмите «Копировать».
Так что толку спросите вы? Различные, среди них наиболее важное использование, которое приходит мне в голову, — это создание инкрементных резервных копий. По словам разработчика, другое использование — это когда у вас есть много клиентских веб-сайтов, которые вы поддерживаете, и хотите обновлять только измененные файлы.
Скачать CopyChangedFiles
Работает на всех версиях Windows. Наслаждаться!
Содержание
- 1 xcopy.exe
- 1.1 Синтаксис
- 1.2 Параметры
- 1.3 Примечание
- 1.4 Примеры
- 1.5 Реклама
- 2 Утилиты xcopy и scopy — скопировать файл или папку через командную строку
- 2.1 Командная строка xcopy
- 2.2 Запись в потоки NTFS
- 3 Команда xcopy: параметры
- 3.1 /a
- 3.2 /b
- 3.3 /с
- 3.4 /d [: дата]
- 3.5 /e
- 3.6 /f
- 3.7 /g
- 3.8 /h
- 3.9 /i
- 3.10 /j
- 3.11 /k
- 3.12 /l
- 3.13 /m
- 3.14 /n
- 3.15 /о
- 3.16 /р
- 3.17 /q
- 3.18 /r
- 3.19 /s
- 3.20 /t
- 3.21 /u
- 3.22 /v
- 3.23 /w
- 3.24 /х
- 3.25 /y
- 3.26 /z
- 3.27 /exclude: file1 [+file2] [+file3]
- 3.28 /?
- 3.29 Примeры
- 3.30 Доступность
- 3.31 Варианты
- 4 Команда xcopy — копирование файлов и каталогов
- 4.1 Формат командной строки:
- 4.2 Параметры командной строки:
- 4.3 Примеры использования:
xcopy.exe
Extended Copy Utility
Утилита командной строки для копирования файлов и папок.
Синтаксис
XCOPY источник [результат] [/A|M] [/D[:дата]] [/I] [/P] [/S[/E]] [/W] [/C] [/Q] [/F] [/L] [/H] [/R] [/T] [/U] [/K] [/Y|/-Y] [/N] [/V] [/G] [/O] [/X] [/Z]
Параметры
источникОбязательный параметр. Задает местонахождение и имена файлов для копирования. Параметр должен задавать или диск, или путь.результатЗадает место, куда будут скопированы файлы. Параметр может включать имя диска с двоеточием, имя каталога, имя файла или их комбинацию./AКопирует только те файлы, которые имеют установленный атрибут архивный. При использовании параметра /a атрибут архивный у исходных файлов не меняется.
/MКопирует только те файлы, которые имеют установленный атрибут «архивный». В отличие от параметра /a, параметр /m очищает атрибут «архивный» у скопированных файлов./D[:дата]Копирует только файлы, измененные не ранее заданной даты. Если параметр дата не указан, то команда xcopy копирует только файлы-источники, которые новее существующих файлов-результатов. Эта возможность позволяет обновлять только измененные файлы.
/IЕсли источником является каталог или источник содержит подстановочные знаки и результат не существует, команда xcopy считает, что результат — это имя каталога, и создает новый каталог. Затем xcopy копирует все указанные файлы в новый каталог. По умолчанию команда xcopy запрашивает подтверждение, является ли параметр результат каталогом или файлом./PЗапрашивает подтверждение при создании каждого файла-результата.
/SКопирует каталоги и подкаталоги, если они не пусты. Если параметр /s не задан, команда xcopy будет работать только с одним каталогом./EКопирует все подкаталоги, включая пустые. Параметр /e используется с параметрами /s и /t./WВыводит сообщение с ожиданием подтверждения начала копирования:Нажмите любую клавишу, чтобы начать копирование файлов/CИгнорирует ошибки./QОтменяет вывод на экран сообщений команды xcopy.
/FВыводит имена исходных файлов и файлов-результатов в процессе копирования./LОтображает список копируемых файлов, но само копирование не происходит./HКопирует системные и скрытые файлы. По умолчанию команда xcopy не копирует системные и скрытые файлы./RКопирует файлы с атрибутом Только для чтения/TКопирует только структуру подкаталога (т. е. дерево), а не файлы. Для копирования пустых каталогов следует задать ключ /e.
/UКопирует (обновляет) только те файлы-источники, которые уже существуют в каталоге результата./KКопирует файлы с атрибутом «только для чтения» с сохранением этого атрибута для скопированных файлов, оригиналы которых имеют этот атрибут. По умолчанию команда xcopy удаляет атрибут «только для чтения»./YУстраняет выдачу запроса на подтверждение перезаписи существующего конечного файла.
/-YВыдает запрос на подтверждение перезаписи существующего конечного файла./NКопирует с использованием коротких имен файловой системы NTFS. Параметр /n требуется при копировании из файловой системы NTFS в файловую систему FAT или когда на диске-результате требуется использование соглашения об именах файлов как в файловой системе FAT (8.3). Файлы могут записываться в файловую систему FAT или NTFS.
/VПроверяет каждый скопированный файл на соответствие его оригиналу./GСоздает незашифрованные файлы-результаты./OКопирует сведения о принадлежности файлов и избирательной таблице управления доступом (DACL)./XКопирует сведения о параметрах аудита файла и системной таблице управления доступом (SACL)./ZКопирует по сети в режиме перезапуска.
Если во время фазы копирования теряется сетевое подключение (например, если сервер переходит автономный режим, разрывая подключение), копирование возобновляется после восстановления подключения. Использование параметра /z команды вызывает также отображение доли (в процентах) завершенной операции копирования для каждого файла./?Выводит справку.
Примечание
- Сравнение команд xcopy и diskcopyКоманда xcopy должна быть использована вместо diskcopy при копировании файлов и подкаталогов на диск другого формата. Так как команда diskcopy копирует диски по дорожкам, требуется, чтобы исходный диск и диск-результат имели одинаковый формат. Для команды xcopy это требование не нужно. Обычно следует использовать команду xcopy, если только не требуется получить два диска с одинаковыми образами.
- Коды завершения программы xcopyПри использовании команды xcopy внутри пакетных файлов можно анализировать ее код завершения, который позволяет определить причину завершения выполнения программы. В следующей таблице перечислены коды завершения с кратким описанием.
Код завершения | Описание |
Файлы скопированы без ошибок | |
1 | Файлы для копирования не найдены |
2 | Нажата комбинация CTRL+C для остановки команды xcopy |
4 | Возникла ошибка инициализации. Недостаточно места в памяти или на диске, введено неверное имя диска или неверный синтаксис вызова команды |
5 | Диск защищен от записи |
Примеры
Чтобы копировать все файлы и подкаталоги (включая пустые подкаталоги) с диска A на диск B, введите:
xcopy a: b: /s /e
Чтобы включить в операцию копирования предыдущего примера системные и скрытые файлы следует использовать параметр /h:
xcopy a: b: /s /e /h
Чтобы обновить файлы в каталоге Reports файлами из каталога Rawdata, измененными после 29 декабря 1993 года, введите:
xcopy rawdata reports /d:29-12-1993
Чтобы обновить файлы предыдущего примера, уже существующие в каталоге Reports, независимо от их даты, введите следующую команду:
xcopy rawdata reports /u
Чтобы получить списк файлов, которые были бы скопированы в предыдущем примере, следует ввести команду:
xcopy rawdata reports /d:29-12-1993 /l > xcopy.out
Список файлов, которые были бы скопированы, находится в файле Xcopy.out.
Чтобы скопировать каталог Customer и все подкаталоги \PublicAddress на сетевой диск H, сохранить у файлов атрибут «только для чтения», введите команду:
xcopy customer h:publicaddress /s /e /k /p
Чтобы выдать предыдущую команду, убедиться, что команда xcopy создает каталог Address и устранить вывод сообщение о создании нового каталога, добавьте параметр /i следующим образом:
xcopy customer h:publicaddress /s /e /k /p /i
Для запуска программы xcopy и анализа кодов завершения можно создать пакетный файл и использовать оператор if для обработки кодов завершения в случае возникновения ошибок. Например, следующая пакетная программа использует замещаемые параметры для задания источникаxcopy и результата:
@echo off rem COPYIT.BAT копирует все файлы во всех подкаталогах
rem исходного диска или каталога (%1) на другой диск
rem или в другой каталог (%2) ?? xcopy %1 %2 /s /e ??if errorlevel 4 goto lowmemory ?if errorlevel 2 goto abort ?if errorlevel 0 goto exit ??:lowmemory ? echo Недостаточно памяти для копирования файлов, задан недопустимый ?echo диск или ошибка в синтаксисе командной строки. ?goto exit ?? :abort ? echo Нажата комбинация CTRL+C для остановки копирования. ?goto exit ??
:exit
Эта пакетная программа может быть использована для копирования всех файлов каталога C:Prgmcode и его подкаталогов на диск B следующим образом:
copyit c:prgmcode b:
Командный интерпретатор подставляет C:Prgmcode вместо параметра %1 и B вместо параметра %2, затем использует команду xcopy с параметрами /e и /s. Если при выполнении xcopy произошла ошибка, пакетная программа считывает код завершения и переходит на метку, указанную в соответствующей инструкции IF ERRORLEVEL. В результате на экран выводится сообщение о характере ошибки и осуществляется выход из пакетной программы.
Обратите внимание, что данная утилита не позволяет создавать зеркала папок. Для этой цели подойдет утилита robocopy.exe, обладающая расширенными возможностями.
Реклама
Источник: http://user.alexanderklimov.ru/windows/winprograms/xcopy.htm
Утилиты xcopy и scopy — скопировать файл или папку через командную строку
В отличии от утилиты COPY, команда XCOPY тоже дает возможность скопировать файл через командную строку, но имеет большее количество функции. Однако, стоит отметить, что XCOPY дает возможность работать лишь с файлами и каталогами, но не с устройствами (например, принтер). Но, как всегда, сначала немного лирики…
В былые времена у меня был диск с операционной системой Windows XP Sp1, в то время не было установочных дисков с авто запуском, поэтому приходилось сначала входить в командную оболочку, а уже потом запускать на диске установочный файл.
Диск был довольно уже пошарпан, виднелись маленькие дырочки, но как не странно, с помощью старого доброго Волков Коммандера мне удавалось скопировать все файлы через командную строку, хотя и не с первой попытки.
Мало того, порой были времена когда система слетала под корень, и мне приходилось вручную производить копирование с одного винта на другой, занимало это сутки…
Командная строка xcopy
XCOPY источник [результат] [/A | /M] [/D[:дата]][/P] [/S [/E]] [/V]
[/W][/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R][/T] [/U] [/K] [/N] [/O]
[/X] [/Y] [/-Y] [/Z] [/EXCLUDE:файл1[+файл 2][+ файл 3]…]
Источник – указываем путь к файлу (файлам), который нужно скопировать.
Результат – указываем место, куда нужно скопировать файл через командную строку. Если данный параметр отсутствует, то документы будут дублироваться в текущий каталог.
/V – как и в предшествующей версии, данный параметр отвечает за проверку телесности документов, но, уже не является обязательным, поскольку проверка осуществляется самой системой. Он остался лишь для совместимости с предыдущими версиями MS-DOS.
/EXCLUDE:файл1[+файл 2][+ файл 3]… – позволяет исключить несколько файлов или папок из процесса копирования. Тут все просто, надо только указать имена объектов, которые следует исключить, но, нельзя использовать спецсимволы, типа «*» и «?».
Ключи файл1, файл2, … указывают на документы, в которых прописаны строки, каждая строка должна находится в отдельной линии. Если же хоть одна из строк будет совпадать с любой частью абсолютного пути копируемого документа, то скопировать с помощью командной строки данный файл не получится.
Допустим в каталоге D:DATA есть три документа с расширением txt: data1.txt, data2.txt и data3.txt. Откроем CMD и пропишем в ней следующие команды:
echo data1.txt>exclude.txt
echo data2.txt>>exclude.txt
В данном примере мы создали в текущем каталоге текстовый документ exlude.txt, в котором прописаны две строчки data1.txt и data2.txt. Символ «>>» отличается от символа «>» только тем, что дописывает данные в конец документа, а не затирает все содержимое новой информацией. Ладно, теперь попробуем выполнить следующие директивы:
XCOPY *.txt D:DATA /EXCLUDE: exclude.txt – в данном примере из текущей папки в папку D:DATA мы скопировали все документы с расширение txt кроме файлов data1 и data2.
Другой пример, если указать строки вида OBJ или .OBJ, то из процесса будут исключены все объекты из папки OBJ и все объекты с расширением .OBJ.
/Z – позволяет дублировать сетевые документы с возобновлением.
Как известно, файловая система приписывает каждому файлу/документу владельца, как правило, это тот пользователь, который создал данный документ. При использовании команд COPY и XCOPY командной строки информация о старом владельце затирается, и владельцем копии становится тот юзер, под учетной записью которого собственно и производилось копирование файлов из командной строки.
/А и /M – задаем режим для архивных документов. Первый ключ после дублирования объекта оставляет у него атрибут «Архивный», второй же ключ отключает этот атрибут по завершении процесса манипуляций.
/O – данный параметр позволяет скопировать только те данные, которые были изменены не ранее указанной даты (дата у указывается в атрибуте /D[:дата], если сама дата не указана, то копирование будет производиться, только если источник новее результата ). Например:
XCOPY «С:My document*.*» «D:RESERVEMy document» /D
Тут будет произведено копирование только тех файлов через командную строку, которые были изменены со времени последнего подобного манипулирования или которых вообще не было в D: RESERVEMy document.
/S – данный ключ указывает, что кроме документов надо произвести и копирование папки, при условии, что она (они) не является пустой.
/Е – данный ключ подобен предыдущему, с той только разницей, что позволяет произвести копирование пустой папки через командную строку.
/W – будет включен режим запроса на нажатие любой клавиши перед началом дублирования.
/C – процесс копирования будет продолжен, даже если произошла ошибка
/I – Данный ключ говорит, что объект назначения должен быть каталогом. Например, если задать ключ /I в команде копирования всех объектов с расширением txt из текущего каталога в несуществующий еще подкаталог TEXT:
XCOPY *.txt TEXT /I
то подкаталог TEXT будет создан без дополнительных запросов.
/Q – этот ключ не будет отображать имена во время процесса
/F – этот ключ будет отображать полные пути источника и результата во время процесса
/L – это ключ всего-навсего отобразит те документы, которые надо скопировать, при этом сам процесс не произойдет.
/H – позволяет дублировать скрытые и системные документы.
/K — заменять объекты с атрибутом “Только для чтения”
/T – создает слепок структуры копируемых папок, но, самих документов не копирует, также не включаются пустые каталоги. Для того чтобы все же включить пустые каталоги и подкаталоги, нужно использовать комбинацию ключей /T /Е.
/U – обновляет содержимое каталога, то есть, копирует лишь те файлы, что уже имеются в каталоге.
/Y и /-Y определяют, нужно ли запрашивать подтверждение перед заменой. /Y означает, что такой запрос нужен, /-Y — не нужен.
/N – копирование с помощью командной строки с использованием сгенерированных коротких имен.
Как уже упоминалось выше, при использовании утилит COPY и XCOPY информация о прежнем владельце затирается. Что бы этого не происходило, можно воспользоваться командой SCOPY из пакета Resource Kit, которая имеет следующий синтаксис:
SCOPY источник [результат] [/О] [/A] [/S]
/О – позволяет дублировать информацию о владельце
/А – дублирование информации связанной с аудитом доступа к файлу или каталогу
/S – копирование файлов через командную строку из всех подкаталогов указанного каталога.
Запись в потоки NTFS
И еще, хотелось бы вспомнить о таком понятии как «копирование в потоки». Данный вопрос я частично затронул в статье с примерами по Windows Script Host при описании метода CreateTextFile объект FileSystemObject. Данная возможность предоставляется только на файловой системе NTFS.
В простом варианте суть дела такова, к каждому документу или диску можно привязать свой поток, и записать информацию непосредственно в поток, то есть, информация будет записана, но сам документ не изменит своего размера.
Давайте проделаем простенький эксперимент, пропишем в командной строке:
echo “Hellow, word”>new.txt:potok.txt – в данном примере мы создали текстовый документ new.txt, а фразу Hellow, word скопировали в поток potok.txt. Если выполнить команду notepad new.txt, то мы ничего не увидим, но, если выполнить так:
notepad new.txt.potok.txt – то мы увидим заветную фразу Hellow, word.
Командная строка xcopy команда.
При удалении файла, удаляется и поток, привязанный к нему. Есть один довольно примитивный способ узнать, что в нашем якобы пустом документе что-то зашито, это поместить его в архив, как результат, нулевой размер документа увеличится при архивировании.
Источник: http://scriptcoding.ru/2013/08/15/xcopy-scopy-cmd/
Xcopy – команда консольного рeжима опeрационной систeмы Windows. Служит для копирования одного или нeсколько файлов и (или) папок из одного мeста в другоe. Она такжe являeтся командой опeрационной систeмы MS-DOS. Благодаря множeству опций и возможности копировать цeлыe каталоги xcopy похожа на традиционную copy, но обладаeт гораздо большими возможностями. Если жe трeбуeтся eщe большая функциональность, то опeрационная систeма располагаeт командой robocopy, которая опeрируeт eщe большим числом парамeтров.
/a
При использовании этой опции будут копироваться только архивныe файлы, найдeнныe в источникe. Нeльзя примeнять /a и /m одноврeмeнно.
/b
Данный парамeтр примeняeтся для копирования символьной ссылки, а нe того, но что она ссылаeтся. Впeрвыe появился в Windows Vista.
/с
Эта опция вынуждаeт xcopy продолжать работу дажe в случаe возникновeния ошибки.
/d [: дата]
Команда xcopy с опциeй /d и слeдующeй за нeй конкрeтной датой в форматe MM-ДД-ГГГГ прeдназначeна для копирования файлов, измeнeнных в указанный дeнь или позжe. Такжe можно использовать этот парамeтр бeз опрeдeлeнного врeмeнного значeния, чтобы выбрать только тe части источника, которыe новee докумeнтов с таким жe имeнeм в приeмникe. Примeняeтся для выполнeния обычного рeзeрвного копирования файлов.
/e
При использовании отдeльно или с опциeй /s дeйствиe парамeтра совпадаeт с /s, но такжe создаeт пустыe папки в приeмникe, eсли они были такими в источникe. Ключ /e тожe можно использовать вмeстe с /t. Это позволяeт включить пустыe каталоги и подкаталоги, найдeнныe в исходной дирeктории, в структуру каталогов, создаваeмую в мeстe назначeния.
/f
Данная опция отображаeт полный путь и имя исходного и цeлeвого файлов.
/g
Используя xcopy с этой опциeй, можно копировать зашифрованныe файлы из источника в приeмник, который нe поддeрживаeт шифрованиe. Ключ нe будeт работать при рeпликации данных с EFS-диска на другой зашифрованный диск иного типа.
/h
Xcopy по умолчанию нe копируeт скрытыe или систeмныe файлы, но с данным парамeтром можeт это сдeлать.
/i
Используeтся данный парамeтр, чтобы xcopy нe спрашивал, файлом или каталогом являeтся получатeль. Если нe примeнить эту опцию и выполнить копированиe из источника, который прeдставляeт собой каталог или группу файлов, в нeсущeствующee мeсто назначeния, то утилита прeдложит указать, чeм имeнно являeтся цeлeвой объeкт.
/j
Эта опция копируeт файлы бeз буфeризации. Данная функция полeзна для очeнь больших объeмов данных. Впeрвыe этот парамeтр xcopy появился в Windows 7.
/k
Опция используeтся при копировании файлов, доступных только для чтeния, чтобы этот атрибут был сохранeн в мeстe назначeния.
/l
Данный парамeтр xcopy слeдуeт использовать, чтобы показать список файлов и папок источника, но само копированиe на самом дeлe нe выполняeтся. Опция будeт полeзна в случаe создания сложной команды с нeсколькими ключами. При этом пользоватeль сможeт увидeть прeдполагаeмую работу xcopy.
/m
Этот парамeтр идeнтичeн опции /a, но послe копирования команда хсору отключит атрибут архива. Во всeх остальных случаях этот атрибут будeт присвоeн всeм файлам в приeмникe, нeзависимо от того, имeли ли они eго в источникe. Нeльзя использовать /m и /a одноврeмeнно.
/n
Данный парамeтр создаeт файлы и папки в приeмникe, используя короткиe имeна. Опция примeняeтся только в случаe копирования в сущeствующee мeсто назначeния на дискe, отформатированном в болee старой файловой систeмe, такой как FAT, которая нe поддeрживаeт длинныe имeна.
/о
Сохраняeт информацию о владeльцe и спискe контроля доступа (ACL) в скопированных файлах.
/р
При использовании данной опции пользоватeль должeн будeт подтвeрдить созданиe каждого файла цeлeвого объeкта.
/q
Опция противоположна /f. Данный парамeтр xcopy пeрeводит выполнeниe в «тихий» рeжим, отключая экранноe отображeниe информации о каждом скопированном файлe.
/r
Данная опция используeтся для пeрeзаписи файлов, открытых только для чтeния, в мeстe назначeния. Если этот парамeтр нe примeняeтся при обновлeнии данных в приeмникe, то будeт вывeдeно сообщeниe Access denied («Отказано в доступe») и команда xcopy остановит работу.
/s
Опция используeтся для копирования папок с файлами и подкаталогами в дополнeниe к содeржимому корнeвого каталога источника. Пустыe дирeктории создаваться нe будут.
/t
Этот парамeтр xcopy заставляeт команду создать в приeмникe структуру каталогов, но нe копировать ни один из файлов. Другими словами, папки и подкаталоги, найдeнныe в источникe, будут пeрeнeсeны, но бeз их содeржимого. Пустыe дирeктории нe создаются.
/u
Парамeтр будeт копировать только файлы источника, которыe ужe находятся в пунктe назначeния.
/v
Этот парамeтр активируeт провeрку размeра каждого записываeмого файла для подтвeрждeния eго идeнтичности. Вeрификация была встроeна в команду xcopy, начиная с Windows XP, поэтому в болee поздних вeрсиях Windows эта опция ничeго нe дeлаeт и включeна только для совмeстимости с MS-DOS.
/w
Парамeтр используeтся для вывода сообщeния “Press any key when ready to being copying file(s)” («Нажмитe любую клавишу, когда будeтe готовы к копированию файла (ов)»). При этом xcopy начинаeт выполнять инструкции только послe подтвeрждeния опeрации нажатиeм клавиши. Эта опция нe дублируeт ключ /p, который активируeт подтвeрждeниe копирования каждого файла.
/х
Этот парамeтр копируeт установки аудита файла и информацию о спискe управлeния доступом к систeмe (SACL). Когда используeтся опция /x, выполняeтся ключ /o.
/y
Опция используeтся, чтобы команда xcopy нe запрашивала подтвeрждeния пeрeзаписи файлов из источника, ужe сущeствующих в приeмникe. И наоборот, парамeтр /-y форсируeт запросы на пeрeзапись. Этот ключ можeт показаться излишним, поскольку такоe повeдeниe команды xcopy заложeно по умолчанию, но опция /y на нeкоторых компьютерах можeт быть задан в пeрeмeнной окружeния COPYCMD, что вызываeт нeобходимость этого парамeтра.
/z
Опция позволяeт командe xcopy бeзопасно прeкращать копированиe при утратe сeтeвого соeдинeния, а затeм возобновлять с того мeста, гдe оно было остановлeно, послe восстановлeния соeдинeния. Этот ключ такжe активируeт вывод процeнта сохранeния каждого файла в ходe выполнeния задачи.
/exclude: file1 [+file2] [+file3]
Данный парамeтр позволяeт указать одно или нeсколько имeн файлов, содeржащих список строк поиска, которыe команда xcopy должна пропустить при копировании.
/?
При использовании данного ключа будeт вывeдeна подробная справка. Выполнeниe xcopy /? аналогично командe help xcopy. Пользоватeль можeт сохранить вывод, который иногда бываeт очeнь длинным, в файлe с помощью опeратора пeрeнаправлeния.
Примeры
- xcopy C:Files E:Files /i
В привeдeнном вышe командe данныe, содeржащиeся в исходном каталогe C:Files, копируются в пункт назначeния, который являeтся новой папкой Files [/i] на дискe E. Никакиe подкаталоги или файлы, содeржащиeся в них, нe будут рeплицированы, поскольку нe был использован ключ /s.
- xcopy «C: Important files » D:Backup /c /d /e /h /i /k /q /r /s /x /y
В этом примeрe команда используeтся для рeзeрвного копирования. Такоe сочeтаниe ключeй с успeхом замeняeт программноe обeспeчeниe, обeспeчивающee сохранность данных. Указанную команду можно записать в пакeтный файл, и в диспeтчeрe задач назначить eго eжeднeвноe автоматичeскоe выполнeниe. Таким образом можно обeспeчить рeгулярноe рeзeрвированиe данных.
Вышeуказанная командная строка означаeт, что xcopy используeтся для копирования всeх файлов и папок [/s], дата которых новee, чeм у ужe находящихся в приeмникe [/d], в том числe пустых[/e] и скрытых [/h], из источника C: Important files в цeлeвой объeкт D:Backup, который являeтся каталогом [/i].
Кромe того, имeются данныe, прeдназначeнныe только для чтeния, которыe слeдуeт рeплицировать [/r] с сохранeниeм этого атрибута послe записи [/k]. Такжe должны сохраняться всe настройки управлeния доступом [/x].
Наконeц, поскольку xcopy должна запускаться в пакeтном рeжимe, нeт нeобходимости в выводe информации о копируeмых объeктах [q], как и в подтвeрждeнии пeрeзаписи каждого из них [/y]. Остановка при возникновeнии ошибки тожe нeжeлатeльна [/c].
- xcopy C:Видeо «\SERVERМeдиа бэкап» /f /j /s /w /z
Здeсь команда xcopy используeтся для копирования всeх папок с файлами, содeржащихся в подкаталогах [/с], из источника “C:Видeо” в цeлeвую дирeкторию “Мeдиа бэкап”, расположeнную в сeти на компьютерe под названиeм SERVER.
Поскольку выполняeтся сохранeниe видео дeйствитeльно большого размeра, то для улучшeния процeсса отключаeтся буфeризация [/j], а так как это происходит по сeти, то прeдусматриваeтся возможность возобновлeния копирования при потeрe связи [/z].
В данном случаe пользоватeль жeлаeт получить запрос на подтвeрждeниe запуска процeсса eщe до того, как xcopy дeйствитeльно что-нибудь сдeлаeт [/w], а такжe жeлаeт видeть подробную информацию о том, какиe файлы записываются [/f].
- xcopy C:Client032 C: Client033 /t /e
В этом примeрe имeeтся источник с хорошо организованным каталогом тeкущeго клиeнта в C: Client032. При этом ужe создана папка Client033 для нового клиeнта, но пользоватeль нe хочeт копировать файлы, а только структуру дирeкторий [/t], чтобы нe дeлать этого вручную. Кромe того, в C:Client032 имeeтся нeсколько пустых каталогов, которыe могут понадобиться для нового клиeнта, поэтому слeдуeт убeдиться, что они тожe будут воспроизвeдeны [/e].
Доступность
Команду можно вызвать из командной строки всeх опeрационных систeм Windows, включая Windows 8, 7, Vista, XP, 98 и т. д. Такжe xcopy поддeрживаeтся опeрационной систeмой MS-DOS. Слeдуeт отмeтить, что доступность нeкоторых парамeтров команды и ee синтаксис в различных ОС можeт отличаться.
Варианты
В Windows 98 и 95 доступны 2 вeрсии команды: xcopy и xcopy32. Тeм нe мeнee послeдняя из них никогда нe прeдназначалась для запуска напрямую.
При выполнeнии xcopy в Windows 95 или 98 автоматичeски запускаeтся либо исходная 16-разрядная вeрсия (в рeжимe MS-DOS), либо выполняeтся новая 32-разрядная вeрсия (в Windows).
Поэтому, нeзависимо от того, какая вeрсия опeрационной систeмы eсть в наличии, нeобходимо всeгда запускать команду xcopy, а нe xcopy32, дажe eсли она доступна. При выполнeнии пeрвой всeгда будeт использоваться наиболee подходящая вeрсия.
Источник: https://xroom.su/komp/1617-komanda-xcopy-parametry
Команда xcopy — копирование файлов и каталогов
Команда XCOPY используется для копирования файлов и каталогов с сохранением их структуры.
По сравнению с командой COPY имеет более широкие возможности и является наиболее гибким средством копирования в командной строке Windows.
Формат командной строки:
XCOPY источник [целевой_объект] [/A | /M] [/D[:дата]] [/P] [/S [/E]] [/V] [/W] [/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U] [/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B] [/EXCLUDE:файл1[+файл2][+файл3]…]
Параметры командной строки:
источник -Копируемые файлы.
целевой_объект — Расположение или имена новых файлов.
/A — Копирование только файлов с установленным архивным атрибутом- сам атрибут при этом не изменяется.
/M — Копирование только файлов с установленным архивным атрибутом- после копирования атрибут снимается.
/D:m-d-y — Копирование файлов, измененных не ранее указанной даты. Если дата не указана, заменяются только конечные файлы, более старые, чем исходные.
/EXCLUDE:файл1[+файл2][+файл3]… — Список файлов, содержащих строки с критериями для исключения файлов и папок из процесса копирования. Каждая строка должна располагаться в отдельнойстроке файла. Если какая-либо из строк совпадает с любой частью абсолютного пути к копируемому файлу, такой файл исключается из операции копирования. Например, указавстроку obj или .obj, можно исключить все файлы из папки obj или все файлы с расширением OBJ соответственно.
/P — Вывод запросов перед созданием каждого нового файла.
/S — Копирование только непустых каталогов с подкаталогами.
/E — Копирование каталогов с подкаталогами, включая пустые. Эквивалентен сочетанию ключей /S /E. Совместим с ключом /T.
/V — Проверка размера каждого нового файла.
/W- Вывод запроса на нажатие клавиши перед копированием.
/C- Продолжение копирования вне зависимости от наличия ошибок.
/I — Если целевой объект не существует и копируется несколько файлов, считается, что целевой объект задает каталог.
/Q- Запрет вывода имен копируемых файлов.
/F- Вывод полных имен исходных и целевых файлов.
/L- Вывод имен копируемых файлов.
/G- Копирование зашифрованных файлов в целевой каталог, не поддерживающий шифрование.
/H — Копирование, среди прочих, скрытых и системных файлов.
/R — Перезапись файлов, предназначенных только для чтения.
/T — Создание структуры каталогов без копирования файлов. Пустые каталоги и подкаталоги не включаются в процесс копирования. Для создания пустых каталогов и подкаталогов используйте сочетание ключей /T /E.
/U — Копирование только файлов, уже имеющихся в целевом каталоге.
/K — Копирование атрибутов. При использовании команды XСOPY обычно сбрасываются атрибуты «Только для чтения».
/N — Использование коротких имен при копировании.
/O — Копирование сведений о владельце и данных ACL.
/X — Копирование параметров аудита файлов (подразумевает ключ /O).
/Y — Подавление запроса подтверждения на перезапись существующего целевого файла.
/Z — Копирование сетевых файлов с возобновлением.
/B — Копирование символической ссылки вместо ее целевого объекта.
/J — Копирование с использованием небуферизованного ввода/вывода. Рекомендуется для очень больших файлов.
Ключ /Y можно установить через переменную среды COPYCMD.
Ключ /-Y командной строки переопределяет такую установку.
Примеры использования:
XCOPY /? — выдать краткую справку по использованию команды.
xcopy C:users D:copy1 — скопировать файлы из каталога C:users в каталог D:copy1 . Будет выполняться копированиебез подкаталогов и только файлов без атрибутов «Скрытый» и «Системный». Для скопированных файлов будет установлен атрибут Архивный.Если каталог, в который выполняется копирование, не существует, то пользователю будет выдано сообщение:
Что означает D:copy1:имя файла или каталога
(F = файл, D = каталог)? D
После ответа D целевой каталог будет создан и копирование будет выполняться в D:COPY1. Для подавления запроса на создание целевого каталога используется параметр /I:
xcopy C:users D:copy1 /I
xcopy C:users D:copy1 /H /Y /C — копирование файлов, включая скрытые и системные, с подавлением запроса на перезапись существующих и возобновлением при ошибке. Если существующий в целевом каталоге файл имеет атрибут «Только чтение», то копирование не выполняется. Для перезаписи таких файлов используется ключ /R
xcopy C:users D:copy1 /H /Y /C /R /S — скопировать все файлы и подкаталоги ( /S ) с перезаписью существующих без запроса ( /Y ) , включая скрытые и системные. ( /H ) с перезаписью файлов с атрибутом «Только чтение» (/R) и игнорированием ошибок ( /C )
xcopy C:users D:copy1 /H /Y /C /R /S /EXCLUDE:C:userslistnotcopy.txt — то же, что и в предыдущем случае,но текстовый файл C:userslistnotcopy.txt задает признаки исключения из процедуры копирования.Пример содержимого файла:
User1 — исключить из копирования каталог C:usersuser1All Users исключить из копирования каталог C:usersAll Users
de*.* — исключить из копирования все файлы и каталоги, начинающиеся на буквосочетание «de»
xcopy C:users*.exe D:copy1 /H /Y /C /R /S /EXCLUDE:C:userslistnotcopy.txt — то же, что и в предыдущем примере, но выполняется только копирование исполняемых файлов срасширением .exe.
xcopy %TEMP%*.ini D:copy1ini /H /Y /C /R /S /I — копирование всех файлов с расширением .ini из каталога временных файлов в каталог D:copy1ini . Если целевой подкаталог ini не существует, то он будет создан без запроса пользователю ( /I ) .
xcopy %TEMP%*.ini D:copy1ini /H /Y /C /R /S /I /D:09-16-2013 — то же, что и в предыдущем примере, но выполняется копирование только тех файлов, у которых установлена дата изменения 16 сентября 2013 года и старше.
xcopy C: D:copy1LISTDIR /H /Y /C /R /S /I /E /T — создать структуру папок диска C: в каталоге D:copy1LISTDIR. Копирование файлов не выполняется. Копируются только папки, включая пустые, скрытые и системные.
xcopy C: D:copy1LISTDIR /H /Y /C /R /S /I /E /T /D:09-16-2013 воссоздать в каталоге D:copy1LISTDIR структуру папок диска C: , с датой изменения 16 сентября 2013 года и позже.
Для добавления новых файлов в каталоги и обновления существующих на более поздние версии, можно использовать команду REPLACE.
2018-09-18
Источник: http://j4web.ru/likbez/xcopy.html
- 29.01.2020
- 44 014
- 5
- 02.11.2020
- 25
- 23
- 2
- Содержание статьи
- Описание
- Синтаксис
- Параметры
- Примечания
- Примеры использования
- Справочная информация
- Комментарии к статье ( 5 шт )
- Добавить комментарий
Описание
XCOPY — Копирует файлы и каталоги, включая подкаталоги.
Синтаксис
xcopy источник [результат] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:мм-дд-гггг]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:файл1[+[файл2]][+[файл3]] [{/y|/-y}] [/z]
Параметры
Параметр | Описание |
---|---|
источник | Обязательный параметр. Задает местонахождение и имена файлов для копирования. Параметр должен задавать или диск, или путь. |
результат | Задает место, куда будут скопированы файлы. Параметр может включать имя диска с двоеточием, имя каталога, имя файла или их комбинацию. |
/w | Выводит следующее сообщение с ожиданием подтверждения начала копирования: Нажмите любую клавишу, чтобы начать копирование файлов |
/p | Запрашивает подтверждение при создании каждого файла-результата. |
/c | Игнорирует ошибки. |
/v | Проверяет каждый скопированный файл на соответствие его оригиналу. |
/q | Отменяет вывод на экран сообщений команды xcopy. |
/f | Выводит имена исходных файлов и файлов-результатов в процессе копирования. |
/l | Отображает список копируемых файлов. |
/g | Создает незашифрованные файлы-результаты. |
/d[:мм-дд-гггг] | Копирует только файлы, измененные не ранее заданной даты. Если не включить значение мм-дд-гггг, команда xcopy копирует все файлы-источники, которые новее существующих файлов-результатов. Эта возможность позволяет обновлять только измененные файлы. |
/u | Копирует (обновляет) только те файлы-источники, которые уже существуют в каталоге результата. |
/i | Если источником является каталог или источник содержит подстановочные знаки и результат не существует, команда xcopy считает, что результат — это имя каталога, и создает новый каталог. Затем xcopy копирует все указанные файлы в новый каталог. По умолчанию команда xcopy запрашивает подтверждение, является ли параметр результат каталогом или файлом. |
/s | Копирует каталоги и подкаталоги, если они не пусты. Если параметр /s не задан, команда xcopy будет работать только с одним каталогом. |
/e | Копирует все подкаталоги, включая пустые. Параметр /e используется с параметрами /s и /t. /t Копирует только структуру подкаталога (т. е. дерево), а не файлы. Для копирования пустых каталогов следует задать ключ /e. |
/k | Копирует файлы с атрибутом «только для чтения» с сохранением этого атрибута для скопированных файлов, оригиналы которых имеют этот атрибут. По умолчанию команда xcopy удаляет атрибут «только для чтения». |
/r | Копирует файлы с атрибутом «только для чтения». |
/h | Копирует системные и скрытые файлы. По умолчанию команда xcopy не копирует системные и скрытые файлы. |
/a | Копирует только те файлы, которые имеют установленный атрибут «архивный». При использовании параметра /a атрибут «архивный» у исходных файлов не меняется. |
/m | Копирует только те файлы, которые имеют установленный атрибут «архивный». В отличие от параметра /a, параметр /m очищает атрибут «архивный» у скопированных файлов. |
/n | Копирует с использованием коротких имен файловой системы NTFS. Параметр /n требуется при копировании из файловой системы NTFS в файловую систему FAT или когда на диске-результате требуется использование соглашения об именах файлов как в файловой системе FAT (8.3). Файлы могут записываться в файловую систему FAT или NTFS. |
/o | Копирует сведения о принадлежности файлов и избирательной таблице управления доступом (DACL). |
/x | Копирует сведения о параметрах аудита файла и системной таблице управления доступом (SACL) (подразумевается наличие /p). /exclude:файл1[+[файл2]][+[файл3]] Определяет список файлов, содержащих строки. |
/y | Устраняет выдачу запроса на подтверждение перезаписи существующего конечного файла. |
/-y | Выдает запрос на подтверждение перезаписи существующего конечного файла. |
/z | Копирует по сети в режиме перезапуска. |
/? | Отображает справку в командной строке. |
Примечания
-
- Использование параметра /exclude
Построчный вывод всех строк в каждом файле. При соответствии выведенной строки части пути копируемого файла, он исключается из процесса копирования. Например, если указана строка «Obj», исключается все файлы, расположенные в каталоге «Obj». Например, если указана строка «.obj», исключается все файлы с расширением .obj. - Использование параметра /z
Если во время фазы копирования теряется сетевое подключение (например, если сервер переходит автономный режим, разрывая подключение), копирование возобновляется после восстановления подключения. Использование параметра /z команды вызывает также отображение доли (в процентах) завершенной операции копирования для каждого файла. - Использование параметра /y в переменной среде COPYCMD. Можно применять параметр /y в переменной среде COPYCMD. Эта настройка может быть переопределена использованием параметра /-y в командной строке. По умолчанию если команда copy выполняется не в пакетной программе, при замене требуется подтверждение.
- Копирование зашифрованных файлов
При копировании файлов на том, не поддерживающий шифрованную файловую систему (EFS), возникнет ошибка. Следует предварительно расшифровать файлы или копировать их на том, поддерживающий EFS. - Добавление файлов
Чтобы объединить файлы, укажите один файл-результат, но несколько файлов-источников (с помощью подстановочных знаков или формата файл1+файл2+файл3). - Значение по умолчанию для результата
Если параметр результат не задан, xcopy будет копировать файлы в текущий каталог. - Указание в качестве результата файла или каталога
Если параметр результат не содержит существующий каталок или не заканчивается обратной чертой(), выводится следующее сообщение:Что означает destination:
имя файла или каталога
(F = файл, D = каталог)?Нажмите F, если файл или файлы должны копироваться в файл. Нажмите D, если файл или файлы должны копироваться в каталог.Чтобы устранить вывод этого сообщения, используйте параметр /i. В результате чего, команда xcopy предполагает, что результат является каталогом, если источник престаляет собой несколько файлов или каталогов. - Использование команды xcopy для установки атрибута «архивный» для файлов результата
Команда xcopy создает файлы с установленным атрибутом «архивный», независимо от состояния этого атрибута у исходных файлов. - Сравнение команд xcopy и diskcopy
Команда xcopy должна быть использована вместо diskcopy при копировании файлов и подкаталогов на диск другого формата. Так как команда diskcopy копирует диски по дорожкам, требуется, чтобы исходный диск и диск-результат имели одинаковый формат. Для команды xcopy это требование не нужно. Обычно следует использовать команду xcopy, если только не требуется получить два диска с одинаковыми образами. - Коды завершения программы xcopy
- Использование параметра /exclude
Для анализа кодов завершения, выведенных командой xcopy, используйте параметр уровень_ошибки в командной строке if пакетных программ.
В следующей таблице перечислены коды завершения с кратким описанием.
Код завершения | Описание |
---|---|
0 | Файлы скопированы без ошибок |
1 | Файлы для копирования не найдены |
2 | Нажата комбинация CTRL+C для остановки команды xcopy |
4 | Возникла ошибка инициализации. Недостаточно места в памяти или на диске, введено неверное имя диска или неверный синтаксис вызова команды |
5 | Диск защищен от записи |
Примеры использования
Чтобы копировать все файлы и подкаталоги (включая пустые подкаталоги) с диска A на диск B, введите:
xcopy a: b: /s /e
Чтобы включить в операцию копирования предыдущего примера системные и скрытые файлы следует использовать параметр /h:
xcopy a: b: /s /e /h
Чтобы обновить файлы в каталоге Reports файлами из каталога Rawdata, измененными после 29 декабря 1993 года, введите:
xcopy rawdata reports /d:29-12-1993
Чтобы обновить файлы предыдущего примера, уже существующие в каталоге Reports, независимо от их даты, введите следующую команду:
xcopy rawdata reports /u
Чтобы получить списк файлов, которые были бы скопированы в предыдущем примере, следует ввести команду:
xcopy rawdata reports /d:29-12-1993 /l > xcopy.out
Список файлов, которые были бы скопированы, находится в файле Xcopy.out.
Чтобы скопировать каталог Customer и все подкаталоги \PublicAddress на сетевой диск H, сохранить у файлов атрибут «только для чтения», введите команду:
xcopy customer h:publicaddress /s /e /k /p
Чтобы выдать предыдущую команду, убедиться, что команда xcopy создает каталог Address и устранить вывод сообщение о создании нового каталога, добавьте параметр /i следующим образом:
xcopy customer h:publicaddress /s /e /k /p /i
Для запуска программы xcopy и анализа кодов завершения можно создать пакетный файл и использовать оператор if для обработки кодов завершения в случае возникновения ошибок. Например, следующая пакетная программа использует замещаемые параметры для задания источникаxcopy и результата:
@echo off
rem COPYIT.BAT копирует все файлы во всех подкаталогах
rem исходного диска или каталога (%1) на другой диск
rem или в другой каталог (%2)
?? xcopy %1 %2 /s /e
??if errorlevel 4 goto lowmemory
?if errorlevel 2 goto abort
?if errorlevel 0 goto exit
??:lowmemory ?
echo Недостаточно памяти для копирования файлов,
задан недопустимый ?echo диск или ошибка в синтаксисе командной строки.
?goto exit
??
:abort ?
echo Нажата комбинация CTRL+C для остановки копирования.
?goto exit ?
?
:exit
Эта пакетная программа может быть использована для копирования всех файлов каталога C:Prgmcode и его подкаталогов на диск B следующим образом:
copyit c:prgmcode b:
Командный интерпретатор подставляет C:Prgmcode вместо параметра %1 и B вместо параметра %2, затем использует команду xcopy с параметрами /e и /s. Если при выполнении xcopy произошла ошибка, пакетная программа считывает код завершения и переходит на метку, указанную в соответствующей инструкции IF ERRORLEVEL. В результате на экран выводится сообщение о характере ошибки и осуществляется выход из пакетной программы.
Справочная информация
Копирование заблокированных файлов с HoboCopy
Автор: windata.ru Оригинальная статья взята здесь.
Предположим, что вы хотите скопировать файл, который намертво заблокирован другой программой. В результате Windows нам радостно сообщит о том, что системный процесс не может получить доступа к файлу, поскольку последний заблокирован другим процессом. Как же тогда скопировать такой файл?
Что же мешает, собственно говоря, освободить файл, закрыв заблокировавшую его программу? Да ничего, но представьте, что вы настраиваете автоматическое резервное копирование файлов. Если файл заблокирован, то программа резервного копирования здесь не справится и нужный файл не будет скопирован. Вот тут-то и понадобится один рецепт, который представлен в этой статье.
Начиная с Windows XP операционная система от Microsoft поддерживает технологию теневого копирования (она же Volume Shadow Copy). Данная технология используется для резервного копирования данных и восстановления системы. В частности, теневая копия представляет собой временный “снимок” файла или раздела жесткого диска. При этом одна программа может получить доступ чтения именно к снимку, в то время как другие программы могут в это же время работать с файлом или изменять его.
Именно это нам и нужно – чтение занятого файла. И поможет нам в этом утилита для командной строки HoboCopy, предназначенная для резервного копирования файлов.
На следующей странице можно загрузить HoboCopy для Windows XP и Windows Vista/7 в версиях 32/64 бит:
Скачать HoboCopy для различных версий Windows (GitHub)
Для работы HoboCopy (да и многих других программ для резервного копирования) нам надобятся две следующих службы Windows:
- Теневое копирование тома
- MS Software Shadow Copy Provider
Если вы забыли, где просмотреть службы, то в Windows 7 перейдите по пути Панель управления > Система и безопасность > Администрирование > Службы (а в Windows XP – Панель управления > Администрирование > Службы).
Убедитесь в том, что службы не отключены. Если для них указан режим запуска Вручную, то программа HoboCopy самостоятельно запустит эти службы, когда понадобится и отключит их по завершению своей работы.
Резервное копирование одного файла с помощью HoboCopy
Как вы помните, HoboCopy – утилита командной строки. К слову сказать, в Windows 7 и Windows Vista ее нужно запускать в режиме администратора, для чего щелкните на файле программы правой кнопкой мыши, выберите команду Свойства > Дополнительно и установите флажок Запуск от имени администратора. Также будет не лишним ознакомиться со статьей Запуск программ Windows 7 в режиме администратора.
Синтаксис команды выглядит следующим образом:
Bash | ||
|
К примеру, мы решили скопировать файл c:userswindatamailoutlook.pst прямо вот сюда: d:backupsoutlook.pst.
Команда будет выглядеть следующим образом:
Bash | ||
|
Резервное копирование каталога с помощью HoboCopy
Чем копировать по одному файлу, разумеется, куда лучше настроить резервное копирование целыми папками. Для этого нам понадобятся такие ключи:
/full – копирование всех файлов
/skipdenied – игнорировать любые сообщения ошибках, связанных с разрешением доступа
/r – рекурсивное копирование
/y – никаких запросов, копировать абсолютно все
Синтаксис команды следующий:
Bash | ||
|
Например, используя предыдущий пример, скопируем всю пользовательскую папку в папку d:backups. Для этого нам понадобится такая команда:
Bash | ||
|
На копирование понадобится какое-то время, так что можно передохнуть, перекусить и потрещать вконтактике (шутка). Результатом станет полная копия всего каталога. Если при копировании были сообщения об ошибках, связанных с разрешением доступа, программа укажет на проблемные файлы.
Инкрементное копирование файлов с помощью HoboCopy
Утилита HoboCopy поддерживает и инкрементный тип копирования. Что это такое? Весьма полезная функция, она позволяет копировать только те файлы, что изменились с момента предыдущего резервного копирования. При этом последняя дата копирования хранится в файле, который вам нужно указать непосредственно в команде утилиты.
Для инкрементного копирования потребуются два ключа:
/statefile=имя_файла – это имя файла, в котором будут записаны данные о последнем копировании
/incremental – а это, как понятно из названия, ключ для инкрементного копирования
Синтаксис команды выглядит так:
Bash | ||
|
Пример:
Bash | ||
|
Важно. При первом запуске программы необходимо указать ключ /full вместо /incremental, иначе будет выдано сообщение об ошибке, так как файл с данными о предыдущем состоянии еще не будет создан. А вот уже все последующие команды нужно указывать с ключом /incremental.
Таким образом, утилита HoboCopy позволяет настроить автоматическое копирование папок, для чего нужно лишь запланировать процедуру копирования. В Windows 7/Vista для этого используйте системную программу Планировщик заданий (Панель управления > Система и безопасность > Администрирование > Расписание выполнения задач), а в Windows XP – окно Назначенные задания (Панель управления > Назначенные задания).