Файлы можно копировать с помощью

Обновлено: 21.11.2024

Вы можете скопировать файл или каталог, используя метод copy(Path, Path, CopyOption. ). Копирование завершается ошибкой, если целевой файл существует, если не указан параметр REPLACE_EXISTING.

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

При копировании символической ссылки копируется цель ссылки. Если вы хотите скопировать саму ссылку, а не содержимое ссылки, укажите опцию NOFOLLOW_LINKS или REPLACE_EXISTING.

Этот метод принимает аргумент типа varargs. Поддерживаются следующие перечисления StandardCopyOption и LinkOption:

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

Если вы не знакомы с перечислениями , см. раздел Типы перечислений.

Ниже показано, как использовать метод копирования:

Помимо копирования файла, класс Files также определяет методы, которые можно использовать для копирования между файлом и потоком. Метод copy(InputStream, Path, CopyOptions. ) может использоваться для копирования всех байтов из входного потока в файл. Метод copy(Path, OutputStream) может использоваться для копирования всех байтов из файла в выходной поток.

В примере Copy используются методы copy и Files.walkFileTree для поддержки рекурсивного копирования. Дополнительную информацию см. в разделе «Обход дерева файлов».

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

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

Имя файла должно быть уникальным, в противном случае в конец имени файла будет добавлен номер. Он также может иметь «- Копировать» в конце имени файла вместо числа. Добавление номера в конец имени скопированного файла гарантирует уникальность скопированного файла. Например, если исходное имя файла — abc123.pdf, а копия создается в том же каталоге или папке, имя скопированного файла может быть abc123(1).pdf или abc123 — Copy.pdf.

Выберите свою операционную систему, чтобы просмотреть инструкции, которые относятся к вам.

Как скопировать файл в Microsoft Windows

Ниже приведены инструкции по копированию файла или нескольких файлов в Microsoft Windows из одного места в другое.

  1. Перейдите к файлам или папкам, которые вы хотите скопировать. Если вам нужна помощь в поиске файлов, воспользуйтесь функцией поиска Windows. файл или файлы, которые вы хотите скопировать, щелкнув их один раз мышью. Если вам нужно выделить более одного файла, вы можете удерживать нажатыми клавиши Ctrl или Shift на клавиатуре или обвести рамкой файлы, которые хотите скопировать.
  2. После выделения щелкните правой кнопкой мыши один из выделенных файлов и выберите "Копировать". Пользователи также могут нажать сочетание клавиш Ctrl + C или в проводнике Windows нажать "Изменить" в верхней части окна и выбрать "Копировать".
  3. Откройте папку назначения, щелкните правой кнопкой мыши пустое место в папке и выберите «Вставить». Или в строке меню вверху нажмите «Файл», выберите «Правка», затем выберите «Вставить».

Если вы хотите скопировать только файл определенного типа, вы можете щелкнуть столбец Тип в проводнике Windows. Это действие сортирует файлы по типу, а не по имени. После группировки по типу вы можете выбрать только те файлы, тип которых вы хотите скопировать, и скопировать эти файлы.

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

Как скопировать файл в MS-DOS и командной строке Windows

Ниже приведены инструкции по копированию одного файла из одного каталога в другой.

Копирование одного файла

  1. С помощью команды cd перейдите в каталог, содержащий файл, который вы хотите скопировать.
  2. Введите команду, аналогичную приведенной ниже.

В приведенном выше примере вы должны заменить «myfile.txt" с именем файла, который вы хотите скопировать, и "c:\my\location" с целевым каталогом. Чтобы увидеть файлы, доступные в текущем каталоге, используйте команду dir.

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

Ниже приведены инструкции по копированию нескольких файлов из одного каталога в другой.

  1. С помощью команды cd перейдите в каталог, содержащий файлы, которые вы хотите скопировать.
  2. Оказавшись в каталоге, содержащем файлы, которые вы хотите скопировать, введите команду, аналогичную одной из следующих команд.

В приведенном выше примере команда скопирует каждый файл из текущего каталога в каталог "mydir".

В приведенном выше примере команда скопирует каждый txt или текстовый файл из текущего каталога в каталог "mydir".

Дополнительные примеры подстановочных знаков см. в нашем определении подстановочных знаков.

Если вам нужно скопировать файлы, каталоги и подкаталоги, используйте команду xcopy. В приведенном выше примере эта команда xcopy копирует все каталоги (даже пустые) и файлы из каталога Hope в каталог примера.

Копирование файлов с длинными именами или файлов с пробелами

Часто вы можете встретить файл с пробелами в имени. Чтобы скопировать эти файлы, заключите полное имя файла и расширение файла в кавычки.

В приведенном выше примере файл "computer Hope.txt" заключен в кавычки, чтобы командная строка знала полное имя файла, тем самым устраняя пробелы.

Как скопировать файлы на другой диск

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

Как сделать копию файла в тот же каталог

В приведенном выше примере файл "example.txt" копируется в тот же каталог, что и "backup.txt", фактически создавая резервную копию файла.

Похожие страницы и помощь

  • Дополнительную информацию о каждой из этих команд MS-DOS см. на страницах команд cd, dir, copy и xcopy.

Пакетный файл

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

Как копировать файлы в Linux и Unix

Ниже приведены инструкции по копированию одного файла из одного каталога в другой.

Копирование одного файла из одного места в другое

  1. С помощью команды cd перейдите в каталог, содержащий файл, который вы хотите скопировать.
  2. Введите команду, аналогичную приведенной ниже.

В приведенном выше примере вы должны заменить "myfile.txt" именем файла, который вы хотите скопировать, а "/usr/bin" - каталогом назначения. Чтобы увидеть файлы, доступные в текущем каталоге, используйте команду ls.

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

Ниже приведены инструкции по копированию нескольких файлов из одного каталога в другой.

  1. С помощью команды cd перейдите в каталог, содержащий файлы, которые вы хотите скопировать.
  2. Оказавшись в каталоге, содержащем файлы, которые вы хотите скопировать, введите команду, аналогичную одной из следующих команд.

В приведенном выше примере команда скопирует каждый файл из текущего каталога в каталог "/usr/bin".

В приведенном выше примере команда скопирует каждый txt или текстовый файл из текущего каталога в каталог "/usr/bin".

Дополнительные примеры подстановочных знаков см. в нашем определении подстановочных знаков.

Копирование файлов с пробелами в именах файлов

Часто вы можете встретить файл с пробелами в имени. Чтобы скопировать эти файлы, заключите полное имя файла и расширение файла в кавычки.

В приведенном выше примере файл "computer Hope.txt" заключен в кавычки, чтобы командная строка знала полное имя файла. В нашем примере имя целевого файла содержит пробелы (пробелы), поэтому имя заключено в кавычки.

Как сделать копию файла в тот же каталог

В приведенном выше примере файл "example.txt" копируется в тот же каталог, что и "backup.txt", фактически создавая резервную копию файла.

Похожие страницы и помощь

  • Дополнительную информацию о каждой из этих команд см. на страницах команд cd, cp и ls.
  • Для общей справки по использованию командной строки Linux см. наш учебник по оболочке Linux и Unix.

Как копировать файлы в Apple macOS

Перетаскивание

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

Сочетание клавиш

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

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

Копирует существующий файл в новый файл.

Перегрузки

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

Копирует существующий файл в новый файл. Разрешена перезапись файла с таким же именем.

Копировать(Строка, Строка)

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

Параметры

Файл для копирования.

Имя целевого файла. Это не может быть каталог или существующий файл.

Исключения

У вызывающего абонента нет необходимого разрешения.

sourceFileName или destFileName — это строка нулевой длины, содержащая только пробел или один или несколько недопустимых символов. Вы можете запросить недопустимые символы с помощью метода GetInvalidPathChars().

sourceFileName или destFileName указывает каталог.

sourceFileName или destFileName имеет значение null .

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

Путь, указанный в sourceFileName или destFileName, недействителен (например, он находится на несопоставленном диске).

имя исходного файла не найдено.

Произошла ошибка ввода-вывода.

Имя исходного файла или имя целевого файла имеет недопустимый формат.

Примеры

В следующем примере файлы копируются в резервную папку C:\archives\2008. Он использует две перегрузки метода Copy следующим образом:

Сначала он использует перегрузку метода File.Copy(String, String) для копирования текстовых файлов (.txt). Код демонстрирует, что эта перегрузка не позволяет перезаписывать уже скопированные файлы.

Затем он использует перегрузку метода File.Copy(String, String, Boolean) для копирования изображений (файлов .jpg). Код демонстрирует, что эта перегрузка позволяет перезаписывать уже скопированные файлы.

Примечания

Этот метод эквивалентен перегрузке метода Copy(String, String, Boolean) с параметром перезаписи, для которого задано значение false .

Параметры sourceFileName и destFileName могут указывать относительный или абсолютный путь. Информация об относительном пути интерпретируется как относительная к текущему рабочему каталогу. Чтобы получить текущий рабочий каталог, используйте метод Directory.GetCurrentDirectory. Этот метод не поддерживает подстановочные знаки в параметрах.

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

Например, вы можете скопировать презентацию на карту памяти, чтобы взять ее с собой на работу. Или вы можете сделать резервную копию документа, прежде чем вносить в него изменения (а затем использовать старую копию, если вам не нравятся ваши изменения).

Эти инструкции относятся как к файлам, так и к папкам. Вы копируете и перемещаете файлы и папки точно так же.

Копировать и вставлять файлы

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

Щелкните правой кнопкой мыши и выберите "Копировать" или нажмите Ctrl + C.

Перейдите в другую папку, куда вы хотите поместить копию файла.

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

Вырежьте и вставьте файлы, чтобы переместить их

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

Щелкните правой кнопкой мыши и выберите Вырезать или нажмите Ctrl + X .

Перейдите в другую папку, куда вы хотите переместить файл.

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

Перетащите файлы, чтобы скопировать или переместить

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

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

Нажмите и перетащите файл из одного окна в другое. Это переместит его, если место назначения находится на том же устройстве, или скопирует его, если место назначения находится на другом устройстве.

Например, если вы перетащите файл с USB-накопителя в домашнюю папку, он будет скопирован, потому что вы перетаскиваете его с одного устройства на другое.

Вы можете принудительно скопировать файл, удерживая нажатой клавишу Ctrl во время перетаскивания, или принудительно переместить его, удерживая нажатой клавишу Shift во время перетаскивания.

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

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

Примечание. Эти команды Linux можно запускать только из окна терминала. Если ваша версия Linux загружается с графическим интерфейсом рабочего стола, запустите окно терминала, нажав CTRL-ALT-F2 или CTRL-ALT-T.

Использование команды cp для копирования файлов и каталогов в Linux

Команда cp — это основной метод копирования файлов и каталогов в Linux. Практически все дистрибутивы Linux могут использовать cp. Основной формат команды:

Эта команда Linux создает копию файла my_file.txt и переименовывает новый файл в my_file2.txt.

По умолчанию команда cp запускается в том же каталоге, в котором вы работаете. Однако один и тот же файл не может существовать дважды в одном и том же каталоге. Вам нужно будет изменить имя целевого файла, чтобы скопировать его в то же место. Некоторые пользователи добавляют _old, некоторые добавляют номер, а некоторые даже меняют трехбуквенное расширение (например, .bak вместо .txt).

Возможно, вы не получите предупреждение до того, как Linux перезапишет ваш файл — будьте осторожны или см. ниже параметр –i.

Дополнительные параметры

В сочетании с командой cp можно использовать дополнительные параметры:

  • –v verbose: показывает ход выполнения нескольких скопированных файлов
  • –ppreserve: сохраняет те же атрибуты, такие как дата создания и права доступа к файлам.
  • –f force: принудительно скопировать, предварительно удалив существующий файл
  • –i интерактивный: запрашивает подтверждение, настоятельно рекомендуется
  • –Рекурсивный: копирование всех файлов и подпапок в каталоге
  • –u update: копировать, только если источник новее, чем место назначения

Примечание. Параметр -p (сохранить) заставляет систему сохранять следующие атрибуты исходного файла: время модификации, время доступа, идентификатор пользователя (UID), идентификатор группы (GID), флаги файла, режим файла, списки контроля доступа. (ACL) и расширенные атрибуты (EA).

Как скопировать файл в другой каталог в Linux

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

Вам не нужно переименовывать файл, если в целевом каталоге уже нет файла с таким же именем.

Чтобы указать путь к исходному файлу:

Это позволяет копировать без изменения каталогов. Команда cp создаст каталог /new_directory, если он не существует.

Чтобы переименовать и скопировать файл по другому пути:

Этот параметр полезен для создания резервных копий файлов конфигурации или для копирования данных на устройство хранения.

Примечание. Узнайте, как перемещать каталоги в Linux.

Копировать несколько файлов из одного каталога в другой в Linux

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

Перечислите все файлы, которые нужно скопировать, перед целевым каталогом:

В этом примере создаются копии всех трех файлов в папке /new_directory.

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

Это позволит найти все файлы с расширением .jpg в каталоге /pictures и скопировать их в папку /new_directory.

Чтобы скопировать всю папку, ее вложенные папки и файлы, используйте параметр –R:

–R означает рекурсивный, что означает «все в этом месте». Это скопирует все файлы, а также все каталоги в папку /new_directory.

Копировать с помощью команды rsync

Команда rsync в Linux используется для синхронизации или передачи данных между двумя местоположениями. Использование похоже на cp , но следует отметить несколько ключевых отличий.

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

  • Опция –a означает все и включена в команды rsync — это сохраняет подкаталоги, символические ссылки и другие метаданные.
  • Замените файл my_file.txt в рабочем каталоге.
  • Замените /new_directory/ на место назначения.
  • Использование my_file_backup.txt в качестве цели указывает, что файл будет переименован во время копирования.

Чтобы скопировать каталог с помощью rsync, введите следующее:

При этом содержимое каталога /etc/docker/ копируется в /home/backup/docker/. Обязательно сохраняйте косые черты. Если не указывать косую черту в исходном каталоге, содержимое будет скопировано в подкаталог.

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

Другие параметры

Команда ls является удобным партнером команды cp в Linux.

Чтобы просмотреть содержимое каталога, введите команду:

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

Чтобы изменить каталог, используйте cd и имя каталога. Например:

Командная строка изменится, чтобы показать, что вы изменили каталоги.

Теперь вы понимаете, как копировать файлы в Linux. Команда cp — это универсальный и мощный инструмент для управления файлами и их резервного копирования.

Читайте также: