Cp

Матеріал з Вікі ЦДУ
Версія від 10:21, 15 березня 2012; Uletniy (обговореннявнесок)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

cp — команда Unix, призначена для копіювання файлів з одного в інші каталоги (можливо, з іншою файловою системою). Початковий файл залишається незмінним, ім'я створеного файлу може бути таким же, як у результатного, або змінитися.


Копіювати один файл в інший

   cp [ -f ] [ -H ] [ -i ] [ -p ][ -- ] SourceFile TargetFile

Копіювати файл(и) в іншу теку

   cp [ -f ] [ -H ] [ -i ] [ -p ] [ -r | -R ] [ -- ] SourceFile … TargetDirectory

Копіювати одну директорію(-ії) в іншу

   cp [ -f ] [ -H ] [ -i ] [ -p ] [ -- ] { -r | -R } SourceDirectory … TargetDirectory 


Опції

-f (від англ. force) — вказує, що цільовий файл має бути вилучений, якщо він не може бути відкритий для операції запису. Видалення файлу передує кожній операції копіювання команди cp.

-P — команда cp копіює символьні зв'язки. За замовчанням команда копіює файли, на які вказують символьні зв'язки.

-i (від англ. interactive) — виводить підказку для підтвердження кожної операції перезапису. Це трапляється, коли цільовий файл або тека містять файл або теку, що перелічений в списку копіювання. Якщо ви відповісте y (англ. yes — так) або місцевим варіантом y, команда cp здіюснить перезапис. Будь-яка інша відповідь вбереже цільовий файл від перезапису командою cp.

-p (від англ. preserve) — продублює наступні характеристики кожного файла, що копіюється, у відповідному цільовому файлі або директорії

-R (від англ. recursive) — копіює теки включно з усім їхнім змістом


Приклади

Команда робить з файла prog.c резервну копію prog.bak в тій же теці. Якщо файла prog.bak не існує, він створюється командою, якщо він існує, то перезаписується

cp prog.c prog.bak

Файл jones копіюється в /home/nick/clients/jones

cp jones /home/nick/clients

Щоб скопіювати файл зі збереженням дати і часу модифікації і прав доступа, дайте команду

cp -p smith smith.jr

Коріювання всіх файлів теки /home/janet/clients/ до теки /home/nick/customers/:

cp /home/janet/clients/* /home/nick/customers

Щоб скопіювати всі файли і піддиректорії в нову директорію, наберіть

cp -R /home/nick/clients /home/nick/customers

Копіюємо три файли в теку:

cp jones lewis smith /home/nick/clients

Щоб скопіювати всі програми на C з підкаталогу programs в поточну директорію, використовуємо маски:

cp programs/*.c .