Утилита cp#

Описание#

Утилита cp используется для копирования файлов и каталогов. Можно копировать один файл в другой либо копировать файлы в заданный каталог.

Синтаксис утилиты:

cp <options> <file/path_to_file> <destination_file/path_to_the_file/destination_directory>

Где:

  • <options> - опции;

  • <file/path_to_file> - файл/путь к файлу;

  • <destination_file/path_to_the_file/destination_directory> - файл назначения/путь к файлу/каталогу назначения.

Опции#

Часто используемые опции утилиты представлены в таблице ниже.

Опции cp#

Опция

Описание

--attributes-only

Копировать не содержимое файла, а только атрибуты доступа и владельца

--preserve

Копировать также оригинальные параметры файла - владелец, группа, права доступа, временные штампы, контекст безопасности (--preserve=context)

-b

Создать резервную копию целевого файла, если он уже существует

-f

Удалить файл назначения перед попыткой записи в него, если он существует

-i, --interactive

Запросить подтверждение перед перезаписью файлов

-n

Не перезаписывать существующие файлы

-p, --preserve

Сохранить атрибуты файла (владелец, разрешения, временные метки и др.)

-r, -R

Копировать каталог рекурсивно - копировать также подкаталоги при их наличии

--remove-destination

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

-s

Не копировать файл, а создать символическую ссылку

-u

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

-v

Выводить подробную информацию об операции

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

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

  • Для копирования исходного файла file_1 в каталог destination с именем file_2 введите команду:

    cp file_1 destination/file_2
    
  • Для копирования каталога source со всеми его подкаталогами в каталог destination в подробном режиме введите команду:

    cp -vr source destination
    
  • Для создания резервной копии файла file_1 в случае, если он уже существует в целевом каталоге destination, введите команду:

    cp -b file_1 destination
    

    В данном случае в конце названия файла резервной копии будет добавлен символ тильды ~.

Дополнительная информация#

Дополнительную информацию можно получить, выполнив команду:

man cp

Или:

cp --help