Cp — Команда копирования файлов и/или каталогов

Материал из VAAL-WIKI
Перейти к: навигация, поиск

cp — команда Unix в составе GNU Coreutils, предназначенная для копирования файлов из одного в другие каталоги (возможно, с другой файловой системой). Исходный файл остаётся неизменным, имя созданного файла может быть таким же, как у исходного, или изменится.

Последующие примеры использования касаются AIX версии cp. В других операционных системах семейства Unix данная команда может иметь другие ключи. В DOS и Windows аналогом является команда COPY.

Использование

Чтобы скопировать файл

    cp [ -f ] [ -h ] [ -i ] [ -p ][ -- ] исходный_файл целевой_файл

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

   cp [-R] [-H | -L | -P] [-f | -i] [-pv] исходный_файл ... целевая_директория

Чтобы скопировать каталог в другой каталог (должен быть использован флаг -r или -R)

    cp [ -f ] [ -h ] [ -i ] [ -p ] [ -- ] { -r | -R } исходная_директория ... целевая_директория

Чтобы скопировать каталог /media/fff1787/share1/load/ в каталог /media/beac6e58/, с выводом имени копируемого файла, авто пропуском существующих файлов, рекурсивно для вложенных каталогов.

    cp -invR /media/fff1787/share1/load/ /media/beac6e58/

Синтаксис команды

  • -R, -r, --recursive (recursive) — копировать директории рекурсивно (то есть все поддиректории и все файлы в поддиректориях).
  • -f (force) — разрешает удаление целевого файла, в который производится копирование, если он не может быть открыт для записи.
  • -H — используйте этот ключ, чтобы копировать символические ссылки. По умолчанию команда переходит по символическим ссылкам и копирует файлы, на которые те указывают.
  • -i (interactive) — команда будет запрашивать, следует ли перезаписывать конечный файл, имя которого совпадает с именем исходного, то есть если в параметре целевой_каталог или целевой_файл встречается такое же имя файла, какое было задано в параметре исходный_файл или исходная_директория, то запрашивается подтверждение. Для того, чтобы перезаписать файл, следует ввести y или его эквивалент для данной локали. Ввод любого другого символа приведёт к отмене перезаписи данного файла.
  • -n, --no-clobber — не перезаписывать существующий файл (отменяет предыдущий параметр -i).
  • -v, --verbose — выводит имя каждого файла перед его копированием.

в некоторых системах назначен alias cp='cp -i', т.е. по умолчанию команда cp будет спрашивать о перезаписи

  • -p (preserve) — повторяет следующие свойства исходного файла или директории у целевого файла или директории:
    • Время последнего изменения и последнего доступа.
    • Идентификатор пользователя и группы.
    • Права доступа и биты SUID и SGID.