Утилиты copy и replace — копирование и замена файлов через командную строку

И в данном посте я рассмотрю замену и копирование файлов через командную строку, а именно, утилиты COPY и REPLACE. Но сперва, как всегда немого лирики.

Пожалуй, любой программист сталкивался с вопросом написания функции для копирования каталога с файлами. Как правило, эти задачи решались при использовании рекурсии. В былые времена, не было мышки и правого клика со вкладкой «копировать, вырезать, вставить», да и синий Волков не сразу появился. Это теперь все так привычно, сидишь за клавиатурой, втыкаешь в зеленое поле Винды, клик туда, клик сюда, и все, задачу решил. Но, бывали и трудные ситуации, когда приходилось прибегать к синему менеджеру. Как не странно, но командная строка и ее утилиты от версии к версии меняют свой вид, Есть даже целый набор утилит типа PsUtils, которые эффективней стандартных ДОСовских. Логический вопрос, кому это все надо! Какой смысл изобретать современного динозавра, йоп те! С другой стороны, такова наша природа человеческая, мы готовы даже велосипед снова изобрести, лишь бы занять свой ум.

Командная строка COPY

Данный шедевр человеческой мысли позволяет произвести копирование (copy) через командную строку файла или файлов или даже их конкатенацию (объединение). Для решения подобных задач север сценариев Windows Script Host предоставляет в распоряжение метод CopyFile объекта FileSystemObject. Синтаксис утилиты командной строки copy, довольно устрашающий:

– указывает на возможность создания зашифрованного файла.

– позволяет копировать данные по сети, кстати, в предыдущих вариантах данной утилиты этого ключа не наблюдалось.

– указывает, что файл является текстовым, если мы укажем данный параметр, то копирование прервется на метке конца файла ASCII код 26.

Если же данный параметр указан в самом конце, то эффект совсем другой. Произойдет полное копирование документа, но в копии будет добавлена метка конца файла если ее не было. Как результат, можете попробовать поэкспериментировать с pdf документом (my_file.pdf – размер документа составляет 247217 байт):

copy my_file.pdf/A new_file.pdf – на выходе мы получим документ new_file.pdf размером в 2538 байт.

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

– данный параметр включает проверку правильности копирования, сравнивая данные после завершения процедуры.

И так командная строка, копирование файлов и парочка примеров:

Копирование через командную строку файла 123.txt из текущего каталога в каталог D:NEW под тем же именем:

COPY 123.txt D:NEW

Копирование файла 123.txt из текущего каталога в каталог D:NEW под новым именем new.txt:

COPY 123.txt D:NEWnew.txt

Копирование всех документов с расширением txt с диска D: в каталог My Data на диске C:

COPY D:*.txt “С:My Data”

Допустим, мы находимся в каталоге D:NEW и нам надо копирнуть в него все данные из каталога C:DATA, в таком случае достаточно прописать следующий синтаксис:

COPY C:DATA  *.*

Используя командную строку, копируемые файлы можно склеить. Для этих целей достаточно использовать знак плюса «+», например:

COPY 1.txt +2.txt 3.txt– в данном примере содержимое документов 1.txt и 2.txt было объединено в 3.txt. Стоит помнить, что по дефолту, утилита COPY воспринимает данные как текстовые.

Вот пример с двоичными данными:

COPY /В *.dat all.dat – в данном варианте все данные с расширением dat из текущей папки были объединены в один файл all.dat.

Вообще, используя символ плюса «+» и мысли типа «а что если», можно проделать парочку экспериментов. Также стоит помнить ряд моментов:

Если название целевого объекта совпадает с одним из копируемых (кроме первого), то исходное содержимое целевого объекта будет утеряно.

Если имя целевого объекта опущено, то в его качестве будет использован первый объект из списка:.

COPY l.txt+2.txt – тут мы добавили к содержимому первого объекта содержимое второго.

COPY 1.txt +,, – данная конструкция позволяет присвоить объекту 1.txt текущую дату без его модификации.

Утилита COPY по своему первенству содержит ряд недостатков:

  • нельзя производить копирование файлов через командную строку с атрибутами скрытый или системный, а также системных и с атрибутом «Только для чтения».
  • обрыв всего процесса копирования при встрече с объектом, который в данный момент не поддается копированию.

В связи с такими неудобствами, умные люди подумали, и прибавили букву Х к названию COPY, чем решили массу проблем, создав утилиту XCOPY.

Командная строка REPLACE

Фактически, отличие данной утилиты в том, что она умеет заменять данные. Синтаксис довольно простой и понятный:

– добавляем в каталог-результат только новые объекты из каталога-результата (без перезаписи). Этот ключ нельзя использовать с ключами /S и / U.

– выводится запрос на подтверждение перед заменой целевого или добавлением исходного файла.

:/>  Ubuntu Server 20.04 LTS: Настройка статического IP-адреса

– замещение не только обычных, но и защищенных от записи документов.

– позволяет производить поиск по всем подкаталогам целевого каталога и заменять файлы с совпадающими именами. Этот ключ нельзя использовать совместно с ключом /А. Поиск в каталогах, заданных параметром путь1, не производится.

– ожидание вставки диска перед началом выполнения

– режим обновления, то есть будут заменены только те объекты, которые имеют более раннюю дату модификации. Несовместимость с ключом /A.

Replace D:Datamy_file.txt D:Work – в папке Work заменяем файл my_file.txt на D:Datamy_file.txt

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

Как копировать файлы или папку в Windows 10

Утилиты copy и replace — копирование и замена файлов через командную строку

Как скопировать файл или всю папку вместе с содержимым из одного места в другое в Windows 10

Если перед вами стоит такая задача, как скопировать файл или папку, находящуюся на жестком диске или на подключенных к компьютеру устройствах хранения информации, и вы не знаете как это сделать — значит, вы, скорее всего, начинающий пользователь. Копирование информации (папки или любого файла) на компьютере делается довольно просто, алгоритм действий будет одинаковым для любого типа файла и, проделав это один раз, ввиду простоты процедуры, в дальнейшем, вам уже не понадобятся никакие инструкции, для ее повторения.

Итак, для того, чтобы скопировать файл или папку:

Утилиты copy и replace — копирование и замена файлов через командную строку

После нажатия на папку или файл правой кнопкой мыши, появится список возможных действий (контекстное меню), в котором нужно выбрать строку «Копировать», кликнув по ней уже ЛЕВОЙ кнопкой мыши.

Утилиты copy и replace — копирование и замена файлов через командную строку

. (количество строк в контекстном меню (списке, вызванном правой кнопкой мыши) — может отличаться в каждой системе, но, строка «Копировать» будет обязательно! Как правило, она находится ближе к концу списка)

После чего, нажимаем ПРАВОЙ кнопкой мыши НА ПУСТОМ (свободном от других элементов, если таковые имеются в целевом каталоге) МЕСТЕ. И выбираем строку «Вставить» , кликнув по ней уже ЛЕВОЙ кнопкой мыши.

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

Как скопировать и переместить файла или папку

Скопировать или переместить файл в другую папку очень просто. Первым делом его нужно выделить. Для этого один раз щелкните мышкой по файлу. Далее на вкладке Главная нажмите кнопку Копировать (или Вырезать, если вы хотите переместить файл), перейдите в папку назначения и нажмите кнопку Вставить.

Утилиты copy и replace — копирование и замена файлов через командную строку

Также работает и способ, который был доступен в предыдущих версиях Windows — можно щелкнуть правой кнопкой на файле и выбрать из контекстного меню команду Вырезать или Копировать. Вместо команды Копировать можно нажать Ctrl + С, а вместо Вырезать — Ctrl + X.

Если нужно скопировать/переместить группу файлов, то нужно сначала эту группу выделить. Если нужно выделить все файлы в папке, проще всего нажать комбинацию клавиш Ctrl + А.

Если нужно выделить группу файлов, но не все файлы в папке, тогда нужно использовать щелчок мыши вместе с нажатой клавишей Ctrl или Shift. На нем выделены файлы через один, то есть первый, третий и пятый. Как их так выделить? Нужно щелкнуть на первом файле, затем нажать и удерживать Ctrl, щелкнуть на третьем и на пятом.

Утилиты copy и replace — копирование и замена файлов через командную строку

Далее выделены первые 4 файла. Чтобы не щелкать на каждом файле с нажатой клавишей Ctrl, для выделения последовательно расположенных файлов нужно выделить первый файл и при нажатой клавише Shift щелкнуть по последнему файлу диапазона.

После того, как файлы/папки выделены, можно их скопировать или вырезать в буфер обмена, после чего вставить в папку назначения, нажав кнопку Вставить на вкладке Главная. Одна из новинок Windows 10 — окно, отображающее ход копирования/перемещения файлов вместе со скоростью. Можете понаблюдать, как изменяется скорость во время копирования.

3 min

Утилиты copy и replace — копирование и замена файлов через командную строку

Windows предлагает множество способов копирования и перемещения файлов. Мы покажем вам все хитрости для проводника и их использование в командной строке и PowerShell. Вы даже можете добавить «Копировать в» и «Переместить в» в контекстные меню Проводника.

При копировании файла или папки в Windows 10 дубликат создается из выбранного элемента и сохраняется в выбранной папке назначения. Однако при перемещении файла или папки исходный элемент перемещается в целевую папку вместо отправки идентичной копии.

:/>  Запросы, которые изменяют значение полей записей

Как копировать или перемещать файлы с помощью перетаскивания

Одним из наиболее распространенных способов копирования или перемещения файла или папки является перетаскивание их в папку назначения. По умолчанию, в зависимости от расположения папки назначения, File Explorer может перемещать ее вместо ее копирования или наоборот. Однако есть скрытый метод, который переопределяет поведение Windows по умолчанию.

Откройте проводник, нажав Windows + E, и перейдите к файлу, который вы хотите скопировать.

Утилиты copy и replace — копирование и замена файлов через командную строку

Откройте второе окно проводника, нажав Windows + E, и перейдите к папке назначения.

Утилиты copy и replace — копирование и замена файлов через командную строку

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

Чтобы скопировать файлы на другой диск, выделите файлы, которые вы хотите скопировать, щелкните и перетащите их во второе окно, а затем отбросьте их.

Утилиты copy и replace — копирование и замена файлов через командную строку

Если вы пытаетесь скопировать файлы в папку на том же диске, щелкните и перетащите их во второе окно. Прежде чем вы их уроните, нажмите Ctrl, чтобы активировать режим копирования.

Утилиты copy и replace — копирование и замена файлов через командную строку

Чтобы переместить файлы в другой каталог на том же диске, выделите файлы, которые вы хотите переместить, щелкните и перетащите их во второе окно, а затем отбросьте их.

Утилиты copy и replace — копирование и замена файлов через командную строку

Если папка назначения находится на другом диске, щелкните и перетащите их во второе окно, как и раньше, но на этот раз нажмите Shift, чтобы активировать режим Move.

Утилиты copy и replace — копирование и замена файлов через командную строку

Как копировать или перемещать файлы, используя вырезать, копировать и вставить

Вы также можете копировать и перемещать файлы с помощью буфера обмена, так же, как вы вырезать, копировать и вставлять текст.

Выделите файлы, которые вы хотите скопировать, а затем нажмите «Копировать» в меню «Файл» или нажмите Ctrl + C на клавиатуре, чтобы добавить их в буфер обмена.

Утилиты copy и replace — копирование и замена файлов через командную строку

Если вы предпочитаете перемещать элементы, выделите файлы, которые вы хотите переместить. Затем нажмите «Вырезать» в меню «Файл» или нажмите Ctrl + X, чтобы добавить файлы в буфер обмена.

Утилиты copy и replace — копирование и замена файлов через командную строку

Перейдите в каталог, в который вы хотите переместить файлы, а затем нажмите «Вставить» на вкладке «Главная» или нажмите Ctrl + V. В зависимости от того, нажмете ли вы «Копировать» или «Вырезать», ваши файлы будут скопированы или перемещены соответственно.

Утилиты copy и replace — копирование и замена файлов через командную строку

Копирование или перемещение файлов и папок с помощью контекстного меню

Утилиты copy и replace — копирование и замена файлов через командную строку

Когда вы щелкаете правой кнопкой мыши по файлу или папке, в Windows есть несколько скрытых функций контекстного меню, которые позволяют вам добавить две опции: Копировать в или Переместить в. Добавление этих двух функций в контекстное меню дает вам возможность скопировать или переместить элементы всего за несколько кликов.

Как копировать или перемещать файлы с помощью командной строки

Один из самых быстрых способов открыть командную строку в нужном каталоге — из проводника. Сначала откройте проводник и перейдите к месту назначения. Нажмите на адресную строку, введите « cmd ”И нажмите Enter.

СВЯЗАННЫЕ С: 10 способов открыть командную строку в Windows 10

Утилиты copy и replace — копирование и замена файлов через командную строку

Чтобы скопировать файл, вы можете использовать следующий синтаксис команды (если вы копируете папку, просто опустите расширение файла):

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

Утилиты copy и replace — копирование и замена файлов через командную строку

Вы также можете использовать copy Команда для дублирования нескольких файлов одновременно. Просто разделите каждый файл запятой, а затем укажите папку назначения, как обычно.

Утилиты copy и replace — копирование и замена файлов через командную строку

Чтобы переместить файл, вы можете использовать следующий синтаксис команды (если вы перемещаете папку, просто опустите расширение файла):

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

Утилиты copy и replace — копирование и замена файлов через командную строку

Однако, если вы попытаетесь переместить несколько файлов, как мы это сделали с copy Командная строка выдаст синтаксическую ошибку.

Утилиты copy и replace — копирование и замена файлов через командную строку

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

Во-первых, если вы хотите переместить все файлы определенного типа, вы можете использовать следующий синтаксис для перемещения файлов:

Утилиты copy и replace — копирование и замена файлов через командную строку

Второй метод включает перемещение всего внутри исходного каталога, независимо от типа файла. Вы можете использовать следующий синтаксис для завершения перемещения:

:/>  Как проверить номер материнской платы на ПК с Windows

Утилиты copy и replace — копирование и замена файлов через командную строку

Как копировать или перемещать файлы с помощью PowerShell

Windows PowerShell даже более мощная и гибкая, чем командная строка, когда дело доходит до копирования или перемещения файлов и папок в среде командной строки. Хотя мы будем только царапать поверхность, с помощью командлетов вы можете делать действительно мощные вещи.

Самый быстрый способ открыть окно PowerShell в нужном месте — сначала открыть папку в проводнике. В меню «Файл» нажмите «Открыть Windows PowerShell», а затем выберите «Открыть Windows PowerShell».

СВЯЗАННЫЕ С: 9 способов открыть PowerShell в Windows 10

Утилиты copy и replace — копирование и замена файлов через командную строку

Чтобы скопировать файл или папку в PowerShell, используйте следующий синтаксис:

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

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

Утилиты copy и replace — копирование и замена файлов через командную строку

Настоящая мощь PowerShell заключается в возможности передавать командлеты вместе. Например, у нас есть папка с кучей подпапок с электронными книгами, которые мы хотим скопировать.

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

Мы могли бы использовать следующий командлет:

Утилиты copy и replace — копирование и замена файлов через командную строку

Для перемещения файлов вместо этого вы можете использовать следующий синтаксис для перемещения чего угодно:

Утилиты copy и replace — копирование и замена файлов через командную строку

Move-Item следует тому же синтаксису, что и Copy-Item Командлет. Итак, если вы хотите переместить все определенные типы файлов из папки и всех ее подпапок — как мы это делали с командлетом Copy-Item — он практически идентичен.

Введите следующий командлет, чтобы переместить все файлы определенного типа из каталога и его подпапок:

Windows 10 сохранить оба файла при копировании

Приложения, которые могут создавать файлы, будь то презентации, документы или изображения, обычно дают им общее название. В идеале, вы должны переименовать все наши файлы и дать им правильное имя. В Windows 7, когда вы пытались скопировать и вставить файлы в папку, в которой уже были файлы с таким же именем, вы получили три варианта; заменить текущие файлы, пропустить файлы с тем же именем или скопировать их оба, но не заменять их. Эта последняя опция копирования и хранения обоих файлов, по-видимому, отсутствует в Windows 10.

Хорошая новость в том, что опция копирования и хранения обоих файлов все еще там. Плохая новость заключается в том, что им не так просто пользоваться, как в Windows 7. Вот где он скрывается.

Скопируйте и сохраните оба файла

Когда вы видите диалоговое окно копирования файлов, которое предупреждает вас, что в папке назначения есть файлы с точно таким же именем, вы получаете три варианта; Замените файлы в месте назначения, пропустите эти файлы и позвольте мне решить для каждого файла. Это последний вариант, на который вы хотите нажать.

Утилиты copy и replace — копирование и замена файлов через командную строку

Когда вы нажмете кнопку «Позвольте мне принять решение для каждого файла», откроется новое окно. В нем будут перечислены конфликтующие файлы с указанием их имени, размера и даты создания. Чтобы скопировать и сохранить оба файла, необходимо проверить их в обеих папках.

Например, на скриншоте ниже, чтобы сохранить файл с именем «Screenshot (16)», его необходимо проверить в обоих столбцах. Если вы хотите скопировать и сохранить все файлы, просто используйте общий флажок вверху для обеих папок. Нажмите Продолжить, и все готово.

Утилиты copy и replace — копирование и замена файлов через командную строку

Имена файлов

Схожие имена файлов будут отредактированы таким образом, чтобы к скопированным файлам добавлялся номер в конце. Например, если вы копируете файл с именем image.png в папку, в которой уже есть файл с именем image.png, скопированный файл будет называться image (1) .png.

Для файлов с последовательным именем номер будет обновлен. Например, если вы скопируете файл с именем «Screenshot (16)» в папку, в которой уже есть файл с именем «Screenshot (16)», имя скопированного файла будет обновлено до «Screenshot (17)». Число будет зависеть от того, какое число не создает конфликт в папке назначения. Если файл Screenshot (17) уже существует, Windows 10 пропустит номер, который не вызовет конфликта.

Если это кажется неоправданно сложным, это отчасти так, но только потому, что сама опция копирования и хранения обоих файлов была усложнена. В Windows 7 использовалось то же соглашение об именах.

Оставьте комментарий