COPY - описание команды и примеры использования

  • 04.02.2020
  • 42 322
  • 7
  • 01.11.2020
  • 14
  • 12
  • 2
COPY - описание команды и примеры использования

Описание

COPY - Копирование одного или нескольких файлов из одного расположения в другое.

Синтаксис

copy [/d] [/v] [/n] [{/y|/-y}] [/z] [{/a|/b}] источник [{/a|/b}] [+ источник [{/a|/b}] [+ ...]] [назначение [{/a|/b}]]

Параметры

Параметр Описание
/d Сохранение копируемых шифрованных файлов как расшифрованных в месте назначения
/v Проверка правильности копирования путем сравнения копий файлов
/n Использование короткого имени (при наличии) копируемого файла, если его имя превышает 8 символов или его расширение превышает 3 символа
/y Отмена вывода запроса на подтверждение перезаписи существующего конечного файла
/-y Вывод запроса на подтверждение перезаписи существующего конечного файла
/z Копирование файлов по сети в режиме перезапуска
/a Указание текстового файла в формате ASCII
/b Указание двоичного файла. источник Обязательный параметр. Задание расположение файла или набора файлов, которые требуется скопировать. Параметр источник может состоять из имени диска с двоеточием, имени папки, имени файла или их комбинации. назначение Обязательный параметр. Задание расположения, в которое требуется скопировать файл или набор файлов. Параметр назначение может состоять из имени диска с двоеточием, имени папки, имени файла или их комбинации
/? Отображение справки в командной строке

Примечания

  • Имеется возможность скопировать текстовый файл, в котором используется символ конца файла (CTRL+Z) для обозначения конца файла.
  • Если параметр /a стоит перед списком файлов в командной строке, он применяется ко всем файлам, перечисленным до параметра /b команды copy. В этом случае /b применяется к файлу, предшествующему /b.
  • Если параметр /a стоит после списка файлов в командной строке, он применяется ко всем файлам, перечисленным до параметра /b команды copy. В этом случае /b применяется к файлу, предшествующему /b.
  • Результат применения параметра /a зависит от его положения в командной строке. Если параметр /a стоит после параметра источник, команда copy обрабатывает файл как текстовый в формате ASCII и копирует данные, которые находятся перед первым символом конца файла.
  • Если параметр /a расположен после параметра назначение, команда copy добавляет символ конца файла как последний символ файла.
  • Параметр /b задает считывание командным процессором количества байт, равного размеру файла в каталоге. Параметр /b задается по умолчанию для команды copy, за исключением случаев использования copy для слияния файлов.
  • Если параметр /b стоит перед списком файлов в командной строке, он применяется ко всем файлам, перечисленным до параметра /a команды copy. В этом случае /a применяется к файлу, предшествующему /a.
  • Если параметр /b стоит после списка файлов в командной строке, он применяется ко всем файлам, перечисленным до параметра /a команды copy. В этом случае /a применяется к файлу, предшествующему /a.
  • Результат применения параметра /b зависит от его положения в командной строке. Если параметр /b стоит после параметра источник, команда copy копирует файл целиком, включая все символы конца строки.
  • Если параметр /b стоит после параметра назначение, команда copy не добавляет символ конца строки.
  • Если операция записи не может быть проверена, выводится сообщение об ошибке. Хотя ошибки записи редко возникают при работе с командой copy, параметром /v можно воспользоваться для проверки правильности записи важных данных. Параметр /v также завершает работу команды copy, поскольку необходимо проверить каждый сектор, записанный на диск.
  • Если параметр /y установлен заранее в переменной среды COPYCMD, можно переопределить эту настройку, указав параметр /-y в командной строке. При переопределении данной настройки по умолчанию выводится запрос, за исключением исключением случаев выполнения команды copy в пакетном файле.
  • Чтобы объединить файлы, укажите один файл в параметре назначение и несколько в параметре источник (используя подстановочные знаки или формат файл1+файл2+файл3).
  • Если во время фазы копирования теряется сетевое подключение (например, если сервер переходит в автономный режим, разрывая подключение), команда copy /z позволяет продолжить копирование после восстановления подключения. Кроме того, параметр /z позволяет отобразить сведения о завершении операции копирования в процентах для каждого файла.
  • Использование внешних устройств в операциях копирования. В качестве параметров источник и назначение можно указать имена устройств.
  • Если в параметре назначение указано устройство (например Com1 или Lpt1), параметр /b позволяет скопировать данные на это устройство в двоичном режиме. В двоичном режиме команда copy /b копирует все символы (включая управляющие символы, такие как CTRL+C, CTRL+S, CTRL+Z и перевод строки) на устройство как данные. Однако если параметр /b не указан, данные копируются на устройство в формате ASCII. В этом режиме управляющие символы могут вызвать слияние файлов в системе Windows XP в процессе копирования. Дополнительные сведения см. в разделе «Слияние файлов».
  • Если конечный файл не задан, по умолчанию файлы будут скопированы с тем же именем, датой и временем создания в текущий каталог на текущем диске. Если исходный файл находится в текущем каталоге на текущем диске, выполнение команды copy завершается и выводится следующее сообщение об ошибке:
    Невозможно скопировать файл в себя
    Скопировано файлов: 0

    Если введено несколько параметров источник, разделенных знаком плюс (+), команда copy объединяет файлы в один. Если в параметре источник использованы подстановочные знаки (* или ?), а в параметре назначение задан один файл, команда copy объединит все файлы, удовлетворяющие шаблону в параметре источник, в один с именем, указанным в параметре назначение. В обоих случаях, если не задан параметр /b, команда copy объединяет файлы как текстовые.

  • Команда Copy не копирует файлы, которые имеют длину, равную 0 байт. Для выполнения этой операции служит команда xcopy.
  • Если требуется установить текущую дату и время в качестве даты модификации файла без изменения его содержимого, воспользуйтесь следующим синтаксисом: copy /b источник+,,Запятые заменяют параметр назначение.
  • Для копирования всех файлов каталога и его подкаталогов служит команда xcopy. Дополнительные сведения о команде xcopy см. по ссылке «».
  • Команда copy с другими параметрами доступна в консоли восстановления.

Примеры использования

Чтобы скопировать файл Memo.doc в файл Letter.doc на текущем диске и убедиться, что символ конца файла находится в конце скопированного файла, введите следующую команду:

copy memo.doc letter.doc /a

Чтобы скопировать файл Robin.typ с текущего каталога на текущем диске в существующий каталог Birds на диске C, введите следующую команду:


copy robin.typ c:\birds

Если каталог Birds не существует, файл Robin.typ будет скопирован в файл с именем Birds в корневой каталог диска C.

Чтобы скопировать несколько файлов в один, перечислите несколько файлов в параметре источник, разделяя их имена значком плюс (+), и укажите в параметре назначение файл, который должен содержать результат объединения этих файлов. Например, чтобы объединить файлы Mar89.rpt, Apr89.rpt и May89.rpt из текущего каталога на текущем диске и поместить их в файл Report в текущем каталоге на текущем диске, введите следующую команду:

copy mar89.rpt + apr89.rpt + may89.rpt report

При объединении команда copy создает конечный файл с текущими датой и временем. Если параметр назначение не указан, файлы объединяются и сохраняются в файле с именем первого файла в списке. Например, чтобы объединить четыре файла в файле Report, если такой файл уже существует, введите следующую команду:

copy report + mar89.rpt + apr89.rpt + may89.rpt

Кроме того, несколько файлов можно объединить в один с помощью символов подстановки (* или ?). Например, чтобы объединить все файлы с расширением .txt в текущем каталоге на текущем диске в файл Combin.doc, введите следующую команду:

copy *.txt combin.doc

Если требуется объединить несколько двоичных файлов в один с использованием подстановочных знаков, воспользуйтесь параметром /b. В результате CTRL+Z не будет рассматриваться как символ конца файла в Windows XP. Например, введите следующую команду:

copy /b *.exe combin.exe

Внимание!

Если объединяются двоичные файлы, результат может оказаться непригодным из-за нарушения внутреннего форматирования.

В следующем примере команда copy объединяет каждый файл с расширением .txt с соответствующим ему файлом с расширением .ref. Результатом является файл с тем же именем, но с расширением .doc. Таким образом, команда copy объединит файлы File1.txt и File1.ref в файл File1.doc, затем файлы File2.txt и File2.ref в файл File2.doc и т. д. Например, введите следующую команду:

copy *.txt + *.ref *.doc

Чтобы объединить сначала все файлы с расширением .txt, а затем все файлы с расширением .ref в файл Combin.doc, введите следующую команду:

copy *.txt + *.ref combin.doc

Справочная информация

Была ли эта статья Вам полезна?

Комментарии к статье (7)

    • Гость

    как просто скопировать несколько файлов pdf из одной папки в другую?
    каждый день создается автоматически 5 файлов pdf на одном арм, нужно их копировать на другой арм, без участия пользователя.

    • vic

    кроме * и ?
    они не работают
    выходит сообщение

    Синтаксическая ошибка в имени файла, имени папки или метке тома.
    Скопировано файлов: 0.

    • vic

    здравствуйте
    какой синтаксис для копирования должен быть, что бы копировал из папки с частью имени

    типа, есть папка, у которой меняется имя, но его начало всегда постоянно
    123-456987\файл.txt
    123-456789\файл.txt
    123-987456\файл.txt

    надо что бы брал постоянную часть имени папки и оттуда копировал файл

    • Если у вас папка именно что меняет имя (то есть отсутствуют другие папки, которые будут попадать под условие, которое будет написано ниже), то как вариант написать bat файл следующего содержания:

      cd C:\Path\Test*\
      copy blablabla.txt C:\AnotherPath /Y
    • Ларин Владимир Васильевич

    Сисадмину.ru (SYSADMIN.RU) Алексею (AJIekceu4)
    От Владимира Васильевича, г. Томск.
    На Вашем сайте https://pc.ru/docs/windows/cmd/copy я прочитал статью об использовании командной строки для копирования файлов. Команда copy, однако, не работает в Windows XP ни в каких вариантах синтаксиса и ни в каких вариантах bat или cmd.
    Не можете ли Вы подсказать мне в чем заключается проблема?
    А вообще я пытаюсь составить программу помещения файлов в папки с названиями файлов, Но ни одна программа, списанная мною с Интернета, также не работает. Отмечу сразу же, что я не являюсь профессионалом в области программирования.
    Благодарен заранее…

      • AJIekceu4

      Добрый день. В Windows XP данная команда имеет следующий синтаксис:

      COPY [/A | /B] source [/A | /B] [+ source [/A | /B] [+ ...]] [destination] [/A | /B]] [/V] [/Y | /-Y]
      /A 	Indicates an ASCII text file.
      /B 	Indicates a binary file.
      destination 	Specifies the directory or file name for the new file(s).
      /V 	Verifies that new files are written correctly.
      /Y 	Suppresses prompting to confirm you want to overwrite an existing destination file.
      /-Y 	Causes prompting to confirm you want to overwrite an existing destination file.

      Если напишите примеры того, что вам нужно сделать, то я постараюсь посмотреть

Добавить комментарий для Ларин Владимир Васильевич

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.