Как скопировать файл (папку) в командной строке Windows
При работе в командной строке (cmd) часто возникает необходимость скопировать файл или целую папку. Также консольные команды для копирования могут использоваться в BAT-файлах для резервного копирования и других задачах.
В этой статье мы расскажем о том, как скопировать файл или папку в командной строке Windows. Статья будет актуальной для всех версий Windows, включая самые новые Windows 11 и Windows 10.
Как скопировать файл через командную строку Windows
Для копирования файлов в командной строке Windows нужно использовать команду « copy ». Данная команда позволяет скопировать один или несколько файлов из одной папку в другую. Обратите внимание, команда « copy » копирует только файлы. Для копирования вложенных папок нужно использовать команду «x copy », которую мы рассмотрим ниже.
В самом простом случае команда для копирования файлов выглядит так:
Например, чтобы скопировать файл « file1.txt » из текущего каталога в папку « e:\tmp » нужно выполнить:
При необходимости для копируемого файла можно указать новое название в папке назначения. Например, чтобы скопировать « file1.txt » из текущего каталога в папку « e:\tmp » и при этом назвать его « newfile.txt » нужно выполнить:
С указанием полных путей команда копирования будет выглядеть так:
Для копирования большого количества файлов в названиях можно использовать маски. Символ звездочка (*) обозначает любое количество любых символов, а знак вопроса (?) – один любой символ. Например, чтобы скопировать все документы с расширением TXT из текущего каталога в папку « e:\tmp\ » нужно выполнить следующее:
Также с помощью команды « copy » можно скопировать все содержимое одной папки в другую. Например, в случае копирования всех файлов из папки « d:\tmp\ » в папку « e:\tmp » команда будет выглядеть так:
В данном случае из папки « d:\tmp\ » будут скопированы только файлы. Для копирования вложенных папок нужно использовать « xcopy ».
Полный синтаксис команды « copy » выглядит так:
Полный список параметров для команды « copy »:
Параметр | Описание |
/d | Сохранение копируемых зашифрованные файлов в расшифрованном виде в месте назначения. |
/v | Проверка правильности записи скопированных файлов. |
/n | Использование короткого имени файла (если доступно) при копировании файла с именем длиннее восьми символов или с расширением длиннее трех символов. |
/y | Подавление запроса на подтверждение перезаписи. |
/-y | Вывод запроса на подтверждение перезаписи. |
/z | Копирует сетевые файлы в перезапускаемом режиме. |
/a | Копирование текстового файла ASCII. |
/b | Копирование двоичного файла. |
<source> | Указывает расположение, из которого необходимо скопировать один или несколько файлов. Обязательный параметр. |
<destination> | Указывает расположение, в которое необходимо скопировать файл или несколько файлов. Обязательный параметр. |
/? | Отображение справки в командной строке. |
Большинство параметров указываются в начале, сразу после команды « copy ». Например, для того чтобы подавить вывод запросов на перезапись существующих файлов можно добавить параметр «/y».
Как скопировать папку через командную строку Windows
Для копирования папок с вложенными папками и файлами в командной строке Windows нужно использовать команду « xcopy ». Данная команда позволяет скопировать папку из одного расположение в другое с сохранением структуры каталогов. Фактически « xcopy » — это более продвинутая версия команды « copy ».
В упрощенном виде синтаксис команды « xcopy » будет выглядеть так:
Для копирования папок с вложенными папками и файлами нужно использовать параметр « /s » или « /e ». Без этих параметров команда будет работать только с одним каталогом.
Параметр | Описание |
/s | Копирование каталогов с подкаталогами (исключая пустые) |
/e | Копирование каталогов с подкаталогами (включая пустые). |
Например, для того чтобы скопировать все файлы и вложенные папки (включая пустые) из папки « d:\tmp » в папку « e:\tmp » нужно выполнить:
Полный синтаксис команды « xcopy » выглядит так:
Полный список параметров для команды « xcopy » можно посмотреть на сайте Майкрософт. Здесь же приведены только некоторые самые базовые:
Параметр | Описание |
/s | Копирование каталогов с подкаталогами (исключая пустые) |
/e | Копирование каталогов с подкаталогами (включая пустые). |
/w | Вывод запроса на подтверждения начала копирования. |
/p | Запрос подтверждение при создании каждого нового файла. |
/c | Пропуск ошибок. |
/v | Проверка всех скопированных файлов на соответствие его исходнику. |
/q | Скрывает вывод информации от команды xcopy. |
/f | Вывод имен в процессе копирования. |
/l | Вывод списка копируемых файлов. |
/g | Сохранение новых файлов в незашифрованном виде. |
/d[:мм-дд-гггг] | Копирование файлов, которые были измененные не ранее указанной даты. Если не указать дату (мм-дд-гггг), то команда xcopy будет копировать все файлы, которые новее существующих. |
/u | Обновление только существующих файлов в папке назначения. |
/y | Подавление запроса на подтверждение перезаписи. |
/-y | Вывод запроса на подтверждение перезаписи. |
/z | Копирует сетевые файлы в перезапускаемом режиме. |
/h | Копирование скрытых и системных файлов. |
/r | Перезапись файлов с атрибутом «только для чтения». |
/t | Создание структуры каталогов без копирования файлов. Пустые каталоги не включаются в структуру. Для включения пустых каталогов нужно добавить параметр /E. |
<source> | Указывает расположение, из которого необходимо скопировать один или несколько файлов. Обязательный параметр. |
<destination> | Указывает расположение, в которое необходимо скопировать файл или несколько файлов. Обязательный параметр. |
/? | Отображение справки в командной строке. |
Параметры указываются в конце команды. Например, для того чтобы скопировать все файлы (включая скрытые, системные и только для чтения) и вложенные папки (включая пустые) из папки « d:\tmp » в папку « e:\tmp » нужно выполнить:
Name already in use
windowsserverdocs / WindowsServerDocs / administration / windows-commands / xcopy.md
- Go to file T
- Go to line L
- Copy path
- Copy permalink
- Open with Desktop
- View raw
- Copy raw contents Copy raw contents
Copy raw contents
Copy raw contents
Copies files and directories, including subdirectories.
For examples of how to use this command, see Examples.
Parameter | Description |
---|---|
<Source> | Required. Specifies the location and names of the files you want to copy. This parameter must include either a drive or a path. |
[<Destination>] | Specifies the destination of the files you want to copy. This parameter can include a drive letter and colon, a directory name, a file name, or a combination of these. |
/w | Displays the following message and waits for your response before starting to copy files: Press any key to begin copying file(s) |
/p | Prompts you to confirm whether you want to create each destination file. |
/c | Ignores errors. |
/v | 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 | Suppresses the display of xcopy messages. |
/f | Displays source and destination file names while copying. |
/l | Generates a list of files that are to be copied, but does not actively copy the files. |
/g | Creates decrypted destination files when the destination does not support encryption. |
/d [:MM-DD-YYYY] | Copies source files changed on or after the specified date only. If you do not include a MM-DD-YYYY value, xcopy copies all source files that are newer than existing destination files. This command-line option allows you to update files that have changed. |
/u | Copies files from source that exist on destination only. |
/i | 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. Then, xcopy copies all specified files into the new directory. By default, xcopy prompts you to specify whether destination is a file or a directory. |
/s | Copies directories and subdirectories, unless they are empty. If you omit /s, xcopy works within a single directory. |
/e | Copies all subdirectories, even if they are empty. Use /e with the /s and /t command-line options. |
/t | Copies the subdirectory structure (that is, the tree) only, not files. To copy empty directories, you must include the /e command-line option. |
/k | Copies files and retains the read-only attribute on destination files if present on the source files. By default, xcopy removes the read-only attribute. |
/r | Copies read-only files. |
/h | Copies files with hidden and system file attributes. By default, xcopy does not copy hidden or system files |
/a | Copies only source files that have their archive file attributes set. /a does not modify the archive file attribute of the source file. For information about how to set the archive file attribute by using attrib, see Related links. |
/m | Copies source files that have their archive file attributes set. Unlike /a, /m turns off archive file attributes in the files that are specified in the source. For information about how to set the archive file attribute by using attrib, see Related links. |
/n | Creates copies by using the NTFS short file or directory names. /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. The destinatio* file system can be FAT or NTFS. |
/o | Copies file ownership and discretionary access control list (DACL) information. |
/x | Copies file audit settings and system access control list (SACL) information (implies /o). |
/exclude:FileName1[+[FileName2]][+[FileName3]( )] | Specifies a list of files. At least one file must be specified. Each file will contain search strings with each string on a separate line in the file. 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. For example, specifying the string obj will exclude all files underneath the directory obj or all files with the .obj extension. |
/y | Suppresses prompting to confirm that you want to overwrite an existing destination file. |
/-y | Prompts to confirm that you want to overwrite an existing destination file. |
/z | Copies over a network in restartable mode. |
/b | Copies the symbolic link instead of the files. This parameter was introduced in Windows Vista®. |
/j | Copies files without buffering. Recommended for very large files. This parameter was added in Windows Server 2008 R2. |
/compress | Request network compression during file transfer where applicable. |
/? | Displays help at the command prompt. |
Using /z
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 also displays the percentage of the copy operation completed for each file.
Using /y in the COPYCMD environment variable.
You can use /y in the COPYCMD environment variable. You can override this command by using /-y on the command line. By default, you are prompted to overwrite.
Copying encrypted files
Copying encrypted files to a volume that does not support EFS results in an error. Decrypt the files first or copy the files to a volume that does support EFS.
To append files, specify a single file for destination, but multiple files for source (that is, by using wildcards or file1+file2+file3 format).
Default value for destination
If you omit destination, the xcopy command copies the files to the current directory.
Specifying whether destination is a file or directory
If destination does not contain an existing directory and does not end with a backslash (), the following message appears:
Press F if you want the file or files to be copied to a file. Press D if you want the file or files to be copied to a directory.
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.
Using the xcopy command to set archive attribute for destination files
The xcopy command creates files with the archive attribute set, whether or not this attribute was set in the source file. For more information about file attributes and attrib, see Related links.
Comparing ** xcopy ** and 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. Because the diskcopy command copies disks track by track, your source and destination disks must have the same format. The xcopy command does not have this requirement. Use xcopy unless you need a complete disk image copy.
Exit codes for xcopy
To process exit codes returned by xcopy , use the ErrorLevel parameter on the if command line in a batch program. For an example of a batch program that processes exit codes using if, see Related links. The following table lists each exit code and a description.
1. To copy all the files and subdirectories (including any empty subdirectories) from drive A to drive B, type:
2. To include any system or hidden files in the previous example, add the /h command-line option as follows:
3. To update files in the \Reports directory with the files in the \Rawdata directory that have changed since December 29, 1993, type:
4. To update all the files that exist in \Reports in the previous example, regardless of date, type:
5. To obtain a list of the files to be copied by the previous command (that is, without actually copying the files), type:
The file xcopy.out lists every file that is to be copied.
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:
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:
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. For example, the following batch program uses replaceable parameters for the xcopy source and destination parameters:
To use the preceding batch program to copy all files in the C:\Prgmcode directory and its subdirectories to drive B, type:
The command interpreter substitutes C:\Prgmcode for %1 and B: for %2, then uses xcopy with the /e and /s command-line options. 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. This example copies all the non-empty directories, plus files with the associated file extension after the asterisk symbol.
Описание команды XCOPY
XCOPY копирует файлы и каталоги, включая подкаталоги в командной строке Windows. Это мощная команда для копирования файлов и папок, имеет больше параметров чем простая команда COPY.
Параметры утилиты XCOPY
xcopy источник [результат] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:мм-дд-гггг]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [] [/n] [/o] [/x] [/exclude:файл1[+[файл2]][+[файл3]] [] [/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 атрибут «архивный» у исходных файлов не меняется. Сведения об установке атрибутов с помощью команды attrib см. по ссылке «См. также».
- /m — Копирует только те файлы, которые имеют установленный атрибут «архивный». В отличие от параметра /a, параметр /m очищает атрибут «архивный» у скопированных файлов. Сведения об установке атрибутов с помощью команды attrib см. по ссылке «См. также».
- /n — Копирует с использованием коротких имен файловой системы NTFS. Параметр /n требуется при копировании из файловой системы NTFS в файловую систему FAT или когда на диске-результате требуется использование соглашения об именах файлов как в файловой системе FAT (8.3). Файлы могут записываться в файловую систему FAT или NTFS.
- /o — Копирует сведения о принадлежности файлов и избирательной таблице управления доступом (DACL).
- /x — Копирует сведения о параметрах аудита файла и системной таблице управления доступом (SACL) (подразумевается наличие /p).
- /exclude:файл1[+[файл2]][+[файл3]] — Определяет список файлов, содежащих строки.
- /y — Устраняет выдачу запроса на подтверждение перезаписи существующего конечного файла.
- /-y — Выдает запрос на подтверждение перезаписи существующего конечного файла.
- /z — Копирует по сети в режиме перезапуска.
- /? — Отображает справку в командной строке.
Примеры команды XCOPY
Чтобы копировать все файлы и подкаталоги (включая пустые подкаталоги) с диска D на диск E, введите:
Все о реестре Regedit / All about registry
Home Командная строка / Command prompt Командная строка / Command prompt Как скопировать папку в cmd / how copy folder in cmd ?
Как скопировать папку в cmd / how copy folder in cmd ?
Для копирования папки в cmd зайдите в командную строку:
1) Нажмите сочетание клавиш Windows+R
2) В открывшемся окне Выполнить наберите cmd
В командной строке вы можете воспользоваться командой copy или xcopy
Пример копирования пустой папки C :\ test _ copy в папку с:\ program files
Одно из отличий команды xcopy от copy – возможность копирования разрешения папки
xcopy /y /o /e «c:\test copy\*.*» «c:\Program Files\test copy\*.*»
Ключ / Y — копирование без подтверждения, если папка уже существует.
Ключ / O – копирование разрешений на папку
Ключ / E – копирование каталогов с подкаталогами включая пустые
Полную справку по xcopy можно посмотреть набрав в командной строке –
xcopy /?
С копированием папок на английском языке все очень просто.
А как скопировать папку с русскими буквами в cmd ?
xcopy /y /o /e «c:\Тестовая папка» «c:\Program Files\Тестовая папка\*.*»
Если записать данную команду в bat или cmd файл скопировав в блокнот и сохранив с расширением cmd или bat то копирование работать не будет.
Результат работы команды
Для копирования папки с русским названием сохраните команду в файл прямо в командной строке
echo xcopy /y /o /e «c:\Тестовая папка» «c:\Program Files\Тестовая папка\*.* » >> c:\test_copy.cmd
Русский текст адаптируется под соответствующую кодировку
Копирование будет работать штатно .
For copy folder in cmd, go to the command prompt:
1) Press keys Windows+R
2) In Run menu type cmd and press Enter
At the command prompt, you can use the copy or xcopy command
An example of copying empty folders C:\test_copy in the folder C:\Program files
One of the differences between xcopy and copy is the ability to copy folder permissions
xcopy /y /o / e «c:\test copy\*.*» «c:\Program Files\test copy \*.*»
The /Y — switch copies without confirmation if the folder already exists.
Key /O — copy permissions to the folder
Key /E – copies directories and sub-directories including empty ones
Full help for xcopy can be found by typing in the command line –
xcopy /?
Copying folders in English is very simple.
And how to copy the folder with Russian letters in cmd?
xcopy /y /o /e «c:\Тестовая папка» «c:\Program Files\Тестовая папка\*.*»
If you write this command in bat or cmd file copied to Notepad and save with the extension cmd or bat then copying will not work.
Result run test_copy.cmd
To copy a folder with a Russian name, save the command to a file directly on the command line